emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] master e124e07: Ensure cursor's foreground color is in syn


From: Eli Zaretskii
Subject: [Emacs-diffs] master e124e07: Ensure cursor's foreground color is in sync with 'default' face
Date: Wed, 10 May 2017 13:08:08 -0400 (EDT)

branch: master
commit e124e07faede2f2d4c6f16af84d796f6305cb8d9
Author: Eli Zaretskii <address@hidden>
Commit: Eli Zaretskii <address@hidden>

    Ensure cursor's foreground color is in sync with 'default' face
    
    * src/w32term.c (x_set_cursor_gc): Don't reuse cursor GC if its
    foreground color is different from the background of the glyph
    string's face.  (Bug#26851)
---
 src/w32term.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/w32term.c b/src/w32term.c
index 0f9dce9..712bdae 100644
--- a/src/w32term.c
+++ b/src/w32term.c
@@ -954,6 +954,10 @@ x_set_cursor_gc (struct glyph_string *s)
   if (s->font == FRAME_FONT (s->f)
       && s->face->background == FRAME_BACKGROUND_PIXEL (s->f)
       && s->face->foreground == FRAME_FOREGROUND_PIXEL (s->f)
+      /* Sometimes we are not called for each change in the default
+        face's background color (e.g., bug#26851), so the additional
+        test in the next line gives us a chance to resync.  */
+      && s->f->output_data.w32->cursor_gc->foreground == s->face->background
       && !s->cmp)
     s->gc = s->f->output_data.w32->cursor_gc;
   else



reply via email to

[Prev in Thread] Current Thread [Next in Thread]