diff options
Diffstat (limited to 'src/nvim/buffer.c')
-rw-r--r-- | src/nvim/buffer.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/src/nvim/buffer.c b/src/nvim/buffer.c index 3a378ea360..4db2b4ef6b 100644 --- a/src/nvim/buffer.c +++ b/src/nvim/buffer.c @@ -4337,10 +4337,8 @@ void buf_addsign( if (lnum == sign->lnum && id == sign->id) { sign->typenr = typenr; return; - } - else if (id < 0 /* keep signs sorted by lnum */ - && lnum < sign->lnum) - { + } else if ((lnum == sign->lnum && id != sign->id) + || (id < 0 && lnum < sign->lnum)) { // attempt to keep signs sorted by lnum insert_sign(buf, prev, sign, id, lnum, typenr); return; } |