From ffafdb2bbe3af069412aeec563764a546a318cad Mon Sep 17 00:00:00 2001 From: Jean-Marc Lasgouttes Date: Sat, 15 Nov 2008 19:30:58 +0000 Subject: [PATCH] move the catInit call around git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27481 a592a061-630c-0410-9148-cb99ea01b6c8 --- src/insets/InsetBibitem.cpp | 2 +- src/insets/InsetFoot.cpp | 2 +- src/insets/InsetListings.cpp | 2 +- src/insets/InsetTabular.cpp | 2 +- src/insets/InsetText.cpp | 2 +- src/tex2lyx/Parser.cpp | 13 ++++++------- 6 files changed, 11 insertions(+), 12 deletions(-) diff --git a/src/insets/InsetBibitem.cpp b/src/insets/InsetBibitem.cpp index 1f5b915948..b919483302 100644 --- a/src/insets/InsetBibitem.cpp +++ b/src/insets/InsetBibitem.cpp @@ -250,7 +250,7 @@ void InsetBibitem::fillWithBibKeys(BiblioInfo & keys, InsetIterator const & it) /// Update the counters of this inset and of its contents void InsetBibitem::updateLabels(ParIterator const &) { - Counters & counters = buffer().params().documentClass().counters(); + Counters & counters = buffer().masterBuffer()->params().documentClass().counters(); docstring const bibitem = from_ascii("bibitem"); if (counters.hasCounter(bibitem) && getParam("label").empty()) { counters.step(bibitem); diff --git a/src/insets/InsetFoot.cpp b/src/insets/InsetFoot.cpp index d771dacd49..615171d0e2 100644 --- a/src/insets/InsetFoot.cpp +++ b/src/insets/InsetFoot.cpp @@ -47,7 +47,7 @@ docstring InsetFoot::editMessage() const void InsetFoot::updateLabels(ParIterator const & it) { - DocumentClass const & tclass = buffer().params().documentClass(); + DocumentClass const & tclass = buffer().masterBuffer()->params().documentClass(); Counters & cnts = tclass.counters(); docstring const foot = from_ascii("footnote"); Paragraph const & outer = it.paragraph(); diff --git a/src/insets/InsetListings.cpp b/src/insets/InsetListings.cpp index 36197ee832..647d401386 100644 --- a/src/insets/InsetListings.cpp +++ b/src/insets/InsetListings.cpp @@ -73,7 +73,7 @@ Inset::DisplayType InsetListings::display() const void InsetListings::updateLabels(ParIterator const & it) { - Counters & cnts = buffer().params().documentClass().counters(); + Counters & cnts = buffer().masterBuffer()->params().documentClass().counters(); string const saveflt = cnts.current_float(); // Tell to captions what the current float is diff --git a/src/insets/InsetTabular.cpp b/src/insets/InsetTabular.cpp index c9c18706ed..7338daba1e 100644 --- a/src/insets/InsetTabular.cpp +++ b/src/insets/InsetTabular.cpp @@ -3211,7 +3211,7 @@ void InsetTabular::edit(Cursor & cur, bool front, EntryDirection) void InsetTabular::updateLabels(ParIterator const & it) { // In a longtable, tell captions what the current float is - Counters & cnts = buffer().params().documentClass().counters(); + Counters & cnts = buffer().masterBuffer()->params().documentClass().counters(); string const saveflt = cnts.current_float(); if (tabular.is_long_tabular) cnts.current_float("table"); diff --git a/src/insets/InsetText.cpp b/src/insets/InsetText.cpp index eaeecc106b..e4722e1238 100644 --- a/src/insets/InsetText.cpp +++ b/src/insets/InsetText.cpp @@ -462,7 +462,7 @@ void InsetText::updateLabels(ParIterator const & it) if (producesOutput()) lyx::updateLabels(buffer(), it2); else { - DocumentClass const & tclass = buffer().params().documentClass(); + DocumentClass const & tclass = buffer().masterBuffer()->params().documentClass(); Counters const savecnt = tclass.counters(); lyx::updateLabels(buffer(), it2); tclass.counters() = savecnt; diff --git a/src/tex2lyx/Parser.cpp b/src/tex2lyx/Parser.cpp index 293a843c75..68b228ef53 100644 --- a/src/tex2lyx/Parser.cpp +++ b/src/tex2lyx/Parser.cpp @@ -25,6 +25,11 @@ CatCode theCatcode[256]; void catInit() { + static bool init_done = false; + if (init_done) + return; + init_done = true; + fill(theCatcode, theCatcode + 256, catOther); fill(theCatcode + 'a', theCatcode + 'z' + 1, catLetter); fill(theCatcode + 'A', theCatcode + 'Z' + 1, catLetter); @@ -358,6 +363,7 @@ string const Parser::verbatimEnvironment(string const & name) void Parser::tokenize_one() { + catInit(); char c; if (!is_.get(c)) return; @@ -434,13 +440,6 @@ void Parser::tokenize_one() void Parser::tokenize() { - static bool init_done = false; - - if (!init_done) { - catInit(); - init_done = true; - } - while (is_) tokenize_one(); }