Fix bug #9236: After we recreate the DocumentClass, we have to apply

it to the document.

(cherry picked from commit c2fdbbe01a)
This commit is contained in:
Richard Heck 2014-08-06 11:43:22 -04:00
parent e2d834e8d0
commit 090bd44740
2 changed files with 15 additions and 0 deletions

View File

@ -32,9 +32,12 @@
#include "Buffer.h"
#include "BufferList.h"
#include "BufferParams.h"
#include "BufferView.h"
#include "CmdDef.h"
#include "Color.h"
#include "CutAndPaste.h"
#include "ErrorList.h"
#include "Font.h"
#include "FuncRequest.h"
#include "FuncStatus.h"
@ -54,6 +57,8 @@
#include "Thesaurus.h"
#include "version.h"
#include "insets/InsetText.h"
#include "support/convert.h"
#include "support/debug.h"
#include "support/ExceptionMessage.h"
@ -1914,7 +1919,16 @@ void GuiApplication::dispatch(FuncRequest const & cmd, DispatchResult & dr)
istringstream ss(argument);
Lexer lex;
lex.setStream(ss);
// See #9236
// We need to make sure that, after we recreat the DocumentClass,
// which we do in readHeader, we apply it to the document itself.
DocumentClassConstPtr olddc = defaults.params().documentClassPtr();
int const unknown_tokens = defaults.readHeader(lex);
DocumentClassConstPtr newdc = defaults.params().documentClassPtr();
ErrorList el;
InsetText & theinset = static_cast<InsetText &>(defaults.inset());
cap::switchBetweenClasses(olddc, newdc, theinset, el);
if (unknown_tokens != 0) {
lyxerr << "Warning in LFUN_BUFFER_SAVE_AS_DEFAULT!\n"

View File

@ -67,6 +67,7 @@ What's new
- Fix import of latex documents with scaled fonts.
- Fix crash when saving default template (bug 9236).
* LYX2LYX