diff options
| author | nyamatongwe <unknown> | 2005-11-29 12:10:38 +0000 | 
|---|---|---|
| committer | nyamatongwe <unknown> | 2005-11-29 12:10:38 +0000 | 
| commit | bfc353c1c79b56980285637be3db7aa8d18beb9d (patch) | |
| tree | c39eb6c1ba7b5d05f290df3dace6428828ee2eb6 /src | |
| parent | d5fe4c441caa5b31350736f70e67168ba0fedbf4 (diff) | |
| download | scintilla-mirror-bfc353c1c79b56980285637be3db7aa8d18beb9d.tar.gz | |
When checking if a cached layout is still valid check the extra style
byte after the last character used for eolFilled.
Diffstat (limited to 'src')
| -rw-r--r-- | src/Editor.cxx | 4 | 
1 files changed, 3 insertions, 1 deletions
| diff --git a/src/Editor.cxx b/src/Editor.cxx index bb0f7ff53..ab7094112 100644 --- a/src/Editor.cxx +++ b/src/Editor.cxx @@ -1942,10 +1942,11 @@ void Editor::LayoutLine(int line, Surface *surface, ViewStyle &vstyle, LineLayou  			bool allSame = true;  			const int styleMask = pdoc->stylingBitsMask;  			// Check base line layout +			char styleByte = 0;  			for (int charInDoc = posLineStart; allSame && (charInDoc < posLineEnd); charInDoc++) {  				char chDoc = pdoc->CharAt(charInDoc); +				styleByte = pdoc->StyleAt(charInDoc);  				if (vstyle.viewEOL || (!IsEOLChar(chDoc))) { -					char styleByte = pdoc->StyleAt(charInDoc);  					allSame = allSame &&  					          (ll->styles[numCharsInLine] == static_cast<char>(styleByte & styleMask));  					allSame = allSame && @@ -1962,6 +1963,7 @@ void Editor::LayoutLine(int line, Surface *surface, ViewStyle &vstyle, LineLayou  					numCharsInLine++;  				}  			} +			allSame = allSame && (ll->styles[numCharsInLine] == styleByte);	// For eolFilled  			if (allSame) {  				ll->validity = LineLayout::llPositions;  			} else { | 
