From e7e4f9fd554738f55723babef4975004b9c1c4df Mon Sep 17 00:00:00 2001 From: Vincent van Ravesteijn Date: Mon, 9 Mar 2009 19:47:46 +0000 Subject: [PATCH] Revert cs 28742:28744 to prepare for a proper fix. git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28745 a592a061-630c-0410-9148-cb99ea01b6c8 --- src/frontends/qt4/LaTeXHighlighter.cpp | 30 ++++---------------------- 1 file changed, 4 insertions(+), 26 deletions(-) diff --git a/src/frontends/qt4/LaTeXHighlighter.cpp b/src/frontends/qt4/LaTeXHighlighter.cpp index f8e498f97d..00f8064af9 100644 --- a/src/frontends/qt4/LaTeXHighlighter.cpp +++ b/src/frontends/qt4/LaTeXHighlighter.cpp @@ -13,14 +13,9 @@ #include "LaTeXHighlighter.h" #include "qt_helpers.h" -#include "support/lassert.h" - #include #include - -using namespace lyx::support; - namespace lyx { namespace frontend { @@ -73,9 +68,7 @@ void LaTeXHighlighter::highlightBlock(QString const & text) // otherwise, start search from 'begin disp math' if (previousBlockState() != 1) startIndex = text.indexOf(exprStartDispMath); - // We try to avoid infinite loops... - static size_t max_loop = 1000; - for (size_t i = 0; i != max_loop; ++i) { + while (startIndex >= 0) { int endIndex = text.indexOf(exprEndDispMath, startIndex); int length; if (endIndex == -1) { @@ -86,23 +79,15 @@ void LaTeXHighlighter::highlightBlock(QString const & text) } setFormat(startIndex, length, mathFormat); startIndex = text.indexOf(exprStartDispMath, startIndex + length); - if (startIndex == -1) - break; } - LASSERT(startIndex == -1, return); - // \whatever static const QRegExp exprKeyword("\\\\[A-Za-z]+"); index = text.indexOf(exprKeyword); - for (size_t i = 0; i != max_loop; ++i) { + while (index >= 0) { int length = exprKeyword.matchedLength(); setFormat(index, length, keywordFormat); index = text.indexOf(exprKeyword, index + length); - if (index == -1) - break; } - LASSERT(index == -1, return); - // %comment // Treat a line as a comment starting at a percent sign // * that is the first character in a line @@ -112,29 +97,22 @@ void LaTeXHighlighter::highlightBlock(QString const & text) QRegExp exprComment("(?:^|[^\\\\])(?:\\\\\\\\)*(%).*$"); text.indexOf(exprComment); index = exprComment.pos(1); - for (size_t i = 0; i != max_loop; ++i) { + while (index >= 0) { int const length = exprComment.matchedLength() - (index - exprComment.pos(0)); setFormat(index, length, commentFormat); text.indexOf(exprComment, index + length); index = exprComment.pos(1); - if (index == -1) - break; } - LASSERT(index == -1, return); - // QString lyxwarn = qt_("LyX Warning: "); QRegExp exprWarning("<" + lyxwarn + "[^<]*>"); index = text.indexOf(exprWarning); - for (size_t i = 0; i != max_loop; ++i) { + while (index >= 0) { int length = exprWarning.matchedLength(); setFormat(index, length, warningFormat); index = text.indexOf(exprWarning, index + length); - if (index == -1) - break; } - LASSERT(index == -1, return); } } // namespace frontend -- 2.39.5