patch 8.2.0108: when sign text is changed a manual redraw is needed
Problem: When sign text is changed a manual redraw is needed. (Pontus
Lietzler)
Solution: Redraw automatically. (closes #5455)
diff --git a/src/sign.c b/src/sign.c
index 935ec3c..9d8d7ac 100644
--- a/src/sign.c
+++ b/src/sign.c
@@ -1025,6 +1025,16 @@
else
sp_prev->sn_next = sp;
}
+ else
+ {
+ win_T *wp;
+
+ // Signs may already exist, a redraw is needed in windows with a
+ // non-empty sign list.
+ FOR_ALL_WINDOWS(wp)
+ if (wp->w_buffer->b_signlist != NULL)
+ redraw_buf_later(wp->w_buffer, NOT_VALID);
+ }
// set values for a defined sign.
if (icon != NULL)
@@ -1781,10 +1791,8 @@
else
{
FOR_ALL_BUFFERS(buf)
- {
if (buf->b_signlist != NULL)
sign_get_placed_in_buf(buf, 0, sign_id, sign_group, retlist);
- }
}
}