summaryrefslogtreecommitdiff
path: root/fluid/CodeEditor.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'fluid/CodeEditor.cxx')
-rw-r--r--fluid/CodeEditor.cxx7
1 files changed, 5 insertions, 2 deletions
diff --git a/fluid/CodeEditor.cxx b/fluid/CodeEditor.cxx
index 38c23c3aa..af1e0c8ac 100644
--- a/fluid/CodeEditor.cxx
+++ b/fluid/CodeEditor.cxx
@@ -305,14 +305,17 @@ void CodeEditor::style_update(int pos, int nInserted, int nDeleted,
end = editor->mBuffer->line_end(pos + nInserted);
text = editor->mBuffer->text_range(start, end);
style = editor->mStyleBuffer->text_range(start, end);
- last = style[end - start - 1];
+ if (start==end)
+ last = 0;
+ else
+ last = style[end - start - 1];
style_parse(text, style, end - start);
editor->mStyleBuffer->replace(start, end, style);
editor->redisplay_range(start, end);
- if (last != style[end - start - 1]) {
+ if (start==end || last != style[end - start - 1]) {
// The last character on the line changed styles, so reparse the
// remainder of the buffer...
free(text);