]> git.eshelyaron.com Git - emacs.git/commitdiff
Preserve display's foreground color when clearing internal borders (Bug#28278)
authorMartin Rudalics <rudalics@gmx.at>
Wed, 30 Aug 2017 08:27:36 +0000 (10:27 +0200)
committerMartin Rudalics <rudalics@gmx.at>
Wed, 30 Aug 2017 08:27:36 +0000 (10:27 +0200)
* src/xterm.c (x_after_update_window_line): Preserve display's
foreground color when clearing internal borders (Bug#28278).

src/xterm.c

index eff1519bf48a9ef3dd7d9b130eb8b74845bd38de..64e89708b2e5d2f3bfd022b5e1b494f7b8f4f591 100644 (file)
@@ -1382,12 +1382,13 @@ x_after_update_window_line (struct window *w, struct glyph_row *desired_row)
          {
            unsigned long color = face->background;
            Display *display = FRAME_X_DISPLAY (f);
+           GC gc = f->output_data.x->normal_gc;
 
-           XSetForeground (display, f->output_data.x->normal_gc, color);
-           x_fill_rectangle (f, f->output_data.x->normal_gc,
-                             0, y, width, height);
-           x_fill_rectangle (f, f->output_data.x->normal_gc,
-                             FRAME_PIXEL_WIDTH (f) - width, y, width, height);
+           XSetForeground (display, gc, color);
+           x_fill_rectangle (f, gc, 0, y, width, height);
+           x_fill_rectangle (f, gc, FRAME_PIXEL_WIDTH (f) - width, y,
+                             width, height);
+           XSetForeground (display, gc, FRAME_FOREGROUND_PIXEL (f));
          }
        else
          {