Backport fix from Scintilla CVS:

Pascal lexer hanging on file that starts with 'interface' after
whitespace.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3859 ea778897-0a13-0410-b9d1-a72fbfd435f5
This commit is contained in:
Nick Treleaven 2009-06-11 14:25:20 +00:00
parent ed63abb871
commit d0b4f550d1
2 changed files with 10 additions and 2 deletions

View File

@ -1,3 +1,11 @@
2009-06-11 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* scintilla/LexPascal.cxx:
Backport fix from Scintilla CVS:
Pascal lexer hanging on file that starts with 'interface' after
whitespace.
2009-06-11 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* waf:

View File

@ -414,7 +414,7 @@ static unsigned int SkipWhiteSpace(unsigned int currentPos, unsigned int endPos,
}
static void ClassifyPascalWordFoldPoint(int &levelCurrent, int &lineFoldStateCurrent,
unsigned int startPos, unsigned int endPos,
int startPos, unsigned int endPos,
unsigned int lastStart, unsigned int currentPos, Accessor &styler) {
char s[100];
GetRangeLowered(lastStart, currentPos, styler, s, sizeof(s));
@ -471,7 +471,7 @@ static void ClassifyPascalWordFoldPoint(int &levelCurrent, int &lineFoldStateCur
} else if (strcmp(s, "interface") == 0) {
// "interface" keyword requires special handling...
bool ignoreKeyword = true;
unsigned int j = lastStart - 1;
int j = lastStart - 1;
char ch = styler.SafeGetCharAt(j);
while ((j >= startPos) && (IsASpaceOrTab(ch) || ch == '\r' || ch == '\n' ||
IsStreamCommentStyle(styler.StyleAt(j)))) {