aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/KeyWords.cxx8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/KeyWords.cxx b/src/KeyWords.cxx
index d954a64e2..0728580fd 100644
--- a/src/KeyWords.cxx
+++ b/src/KeyWords.cxx
@@ -73,7 +73,13 @@ void LexerModule::Fold(unsigned int startPos, int lengthDoc, int initStyle,
// Move back one line in case deletion wrecked current line fold state
if (lineCurrent > 0) {
lineCurrent--;
- startPos = styler.LineStart(lineCurrent);
+ int newStartPos = styler.LineStart(lineCurrent);
+ lengthDoc += startPos - newStartPos;
+ startPos = newStartPos;
+ initStyle = 0;
+ if (startPos > 0) {
+ initStyle = styler.StyleAt(startPos - 1);
+ }
}
fnFolder(startPos, lengthDoc, initStyle, keywordlists, styler);
}