From: Georg Baum Date: Tue, 7 Dec 2010 21:31:31 +0000 (+0000) Subject: Fix bug #6603. X-Git-Tag: 2.0.0~1471 X-Git-Url: https://git.lyx.org/gitweb/?a=commitdiff_plain;h=c24f8ae84ea30cb452a961b62a8610dd0b34e985;p=features.git Fix bug #6603. The problem was that the child buffers were closed, and therefore the TOC contained dangling pointers. The fix is simple: Reopen all child docs and create a new TOC. git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36766 a592a061-630c-0410-9148-cb99ea01b6c8 --- diff --git a/src/frontends/qt4/GuiView.cpp b/src/frontends/qt4/GuiView.cpp index 8585fb4cb1..6fb4f8af27 100644 --- a/src/frontends/qt4/GuiView.cpp +++ b/src/frontends/qt4/GuiView.cpp @@ -2497,6 +2497,11 @@ bool GuiView::closeBuffer(Buffer & buf) theBufferList().release(&buf); return true; } + // open all children again to avoid a crash (bug 6603) + // FIXME updateMacros() does more than needed + buf.updateMacros(); + // get rid of dangling inset pointers in TOC (bug 6603) + buf.tocBackend().update(); return false; }