diff options
author | Christian Walther <walther@indel.ch> | 2013-12-03 10:55:59 +0100 |
---|---|---|
committer | Christian Walther <walther@indel.ch> | 2013-12-03 10:55:59 +0100 |
commit | ba63cce25a06beb0f02173dc0a9f4532facd212e (patch) | |
tree | f7544b6c31dbaab97d1b348a7e701b586f6cf4f3 /src | |
parent | 3c73b698a8edc423776ecf8f40c1586fc5b093cd (diff) | |
download | scintilla-mirror-ba63cce25a06beb0f02173dc0a9f4532facd212e.tar.gz |
Bug [#1560]. Fix missing second one of adjacent indicators.
When there are two adjacent instances of the same indicator (but with different
values), only the first of them was drawn. This is because when attempting to
skip the gap between the first and second indicator, Editor::DrawIndicators
would skip whatever run was there without checking whether it was actually a
gap or already the next indicator.
Diffstat (limited to 'src')
-rw-r--r-- | src/Editor.cxx | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/Editor.cxx b/src/Editor.cxx index 0c100252d..36f85a92c 100644 --- a/src/Editor.cxx +++ b/src/Editor.cxx @@ -2731,7 +2731,10 @@ void Editor::DrawIndicators(Surface *surface, ViewStyle &vsDraw, int line, int x endPos = posLineEnd; DrawIndicator(deco->indicator, startPos - posLineStart, endPos - posLineStart, surface, vsDraw, xStart, rcLine, ll, subLine); - startPos = deco->rs.EndRun(endPos); + startPos = endPos; + if (!deco->rs.ValueAt(startPos)) { + startPos = deco->rs.EndRun(startPos); + } } } } |