From: Vincent van Ravesteijn Date: Sat, 29 Aug 2009 23:14:38 +0000 (+0000) Subject: Fix bug #6160 and #6182: Assertion when viewing master document. X-Git-Tag: 2.0.0~5578 X-Git-Url: https://git.lyx.org/gitweb/?a=commitdiff_plain;h=f733221747bbdadc82a412d77565a76961c015b4;p=features.git Fix bug #6160 and #6182: Assertion when viewing master document. Set Buffer to Insets when reading a document. InsetSpecialChar and InsetLine are the only Insets that are instantiated in readParToken. git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31238 a592a061-630c-0410-9148-cb99ea01b6c8 --- diff --git a/src/Text.cpp b/src/Text.cpp index 54ee1dac9b..cb9531d19d 100644 --- a/src/Text.cpp +++ b/src/Text.cpp @@ -394,11 +394,11 @@ void Text::readParToken(Paragraph & par, Lexer & lex, lex.next(); setLyXColor(lex.getString(), font.fontInfo()); } else if (token == "\\SpecialChar") { - auto_ptr inset; - inset.reset(new InsetSpecialChar); - inset->read(lex); - par.insertInset(par.size(), inset.release(), - font, change); + auto_ptr inset; + inset.reset(new InsetSpecialChar); + inset->read(lex); + inset->setBuffer(const_cast(buf)); + par.insertInset(par.size(), inset.release(), font, change); } else if (token == "\\backslash") { par.appendChar('\\', font, change); } else if (token == "\\LyXTable") { @@ -406,7 +406,10 @@ void Text::readParToken(Paragraph & par, Lexer & lex, inset->read(lex); par.insertInset(par.size(), inset.release(), font, change); } else if (token == "\\lyxline") { - par.insertInset(par.size(), new InsetLine, font, change); + auto_ptr inset; + inset.reset(new InsetLine); + inset->setBuffer(const_cast(buf)); + par.insertInset(par.size(), inset.release(), font, change); } else if (token == "\\change_unchanged") { change = Change(Change::UNCHANGED); } else if (token == "\\change_inserted" || token == "\\change_deleted") {