What is thé contents of thé truncated document ?
Here's a longer backtrace:
#0 0x0000000000a99af0 in lyx::to_utf8(std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&) ()
No symbol table info available.
#1 0x00000000005c6577 in lyx::Paragraph::write(std::ostream&, lyx::BufferParams const&, unsigned long&) const ()
No symbol table info available.
#2 0x00000000005ed142 in lyx::Text::write(std::ostream&) const ()
No symbol table info available.
#3 0x0000000000830afa in lyx::Tabular::write(std::ostream&) const ()
No symbol table info available.
#4 0x00000000005c6bab in lyx::Paragraph::write(std::ostream&, lyx::BufferParams const&, unsigned long&) const ()
No symbol table info available.
#5 0x00000000005ed142 in lyx::Text::write(std::ostream&) const ()
No symbol table info available.
#6 0x00000000005c6bab in lyx::Paragraph::write(std::ostream&, lyx::BufferParams const&, unsigned long&) const ()
No symbol table info available.
#7 0x00000000005ed142 in lyx::Text::write(std::ostream&) const ()
No symbol table info available.
#8 0x000000000048bfa9 in lyx::Buffer::write(std::ostream&) const ()
No symbol table info available.
#9 0x000000000048e86b in lyx::Buffer::writeFile(lyx::support::FileName const&) const ()
No symbol table info available.
#10 0x000000000049bbac in lyx::Buffer::emergencyWrite() ()
No symbol table info available.
#11 0x00000000004bc335 in lyx::BufferList::emergencyWriteAll() ()
No symbol table info available.
#12 0x0000000000576650 in lyx::emergencyCleanup() ()
No symbol table info available.
#13 0x0000000000576781 in error_handler ()
No symbol table info available.
#14 <signal handler called>
No locals.
#15 0x0000000000a99af0 in lyx::to_utf8(std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&) ()
No symbol table info available.
#16 0x00000000005c6577 in lyx::Paragraph::write(std::ostream&, lyx::BufferParams const&, unsigned long&) const ()
No symbol table info available.
#17 0x00000000005ed142 in lyx::Text::write(std::ostream&) const ()
No symbol table info available.
#18 0x0000000000830afa in lyx::Tabular::write(std::ostream&) const ()
No symbol table info available.
#19 0x00000000005c6bab in lyx::Paragraph::write(std::ostream&, lyx::BufferParams const&, unsigned long&) const ()
No symbol table info available.
#20 0x00000000005ed142 in lyx::Text::write(std::ostream&) const ()
No symbol table info available.
#21 0x00000000005c6bab in lyx::Paragraph::write(std::ostream&, lyx::BufferParams const&, unsigned long&) const ()
No symbol table info available.
#22 0x00000000005ed142 in lyx::Text::write(std::ostream&) const ()
No symbol table info available.
#23 0x000000000048bfa9 in lyx::Buffer::write(std::ostream&) const ()
No symbol table info available.
#24 0x000000000048e86b in lyx::Buffer::writeFile(lyx::support::FileName const&) const ()
No symbol table info available.
#25 0x00000000004a1b2d in lyx::Buffer::autoSave() const ()
No symbol table info available.
#26 0x00000000008aacfb in lyx::frontend::GuiView::GuiViewPrivate::autosaveAndDestroy(lyx::Buffer const*, lyx::Buffer*) ()
No symbol table info available.
Note #25: autoSave. And we get the same crash twice: Once when writing
the file the first time, then again when doing the emergency save.
The key part is:
#15 0x0000000000a99af0 in lyx::to_utf8(std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&) ()
No symbol table info available.
#16 0x00000000005c6577 in lyx::Paragraph::write(std::ostream&, lyx::BufferParams const&, unsigned long&) const ()
No symbol table info available.
#17 0x00000000005ed142 in lyx::Text::write(std::ostream&) const ()
No symbol table info available.
#18 0x0000000000830afa in lyx::Tabular::write(std::ostream&) const ()
No symbol table info available.
So the crash actually is within a table, but it's happening in the call
to to_utf8. The only such calls in Paragraph::write are at the very
beginning and the very end, the latter hidden in the call to flushString
(which may be inlined).
Is invalid data being passed to to_utf8?
Richard