[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: underline color of non-ASCII chars
From: |
Gerd Moellmann |
Subject: |
Re: underline color of non-ASCII chars |
Date: |
31 Oct 2001 12:14:50 +0100 |
User-agent: |
Gnus/5.09 (Gnus v5.9.0) Emacs/21.1.50 |
Kenichi Handa <handa@m17n.org> writes:
> The color of underline is overridden by a foregournd color for
> non-ASCII characters.
Thanks, Kenichi. This should fix it:
Index: dispextern.h
===================================================================
RCS file: /cvsroot/emacs/emacs/src/dispextern.h,v
retrieving revision 1.115
retrieving revision 1.116
diff -c -r1.115 -r1.116
*** dispextern.h 2001/10/31 11:02:19 1.115
--- dispextern.h 2001/10/31 11:10:50 1.116
***************
*** 1313,1318 ****
--- 1313,1323 ----
unsigned tty_reverse_p : 1;
unsigned tty_blinking_p : 1;
+ /* 1 means that colors of this face may not be freed because they
+ have been copied bitwise from a base face (see
+ realize_x_face). */
+ unsigned colors_copied_bitwise_p : 1;
+
/* Next and previous face in hash collision list of face cache. */
struct face *next, *prev;
Index: xfaces.c
===================================================================
RCS file: /cvsroot/emacs/emacs/src/xfaces.c,v
retrieving revision 1.237
retrieving revision 1.238
diff -c -r1.237 -r1.238
*** xfaces.c 2001/10/31 01:52:59 1.237
--- xfaces.c 2001/10/31 11:10:25 1.238
***************
*** 1664,1669 ****
--- 1664,1672 ----
struct face *face;
{
#ifdef HAVE_X_WINDOWS
+ if (face->colors_copied_bitwise_p)
+ return;
+
BLOCK_INPUT;
if (!face->foreground_defaulted_p)
***************
*** 6350,6361 ****
face->gc = 0;
/* Don't try to free the colors copied bitwise from BASE_FACE. */
! face->foreground_defaulted_p = 1;
! face->background_defaulted_p = 1;
! face->underline_defaulted_p = 1;
! face->overline_color_defaulted_p = 1;
! face->strike_through_color_defaulted_p = 1;
! face->box_color_defaulted_p = 1;
/* to force realize_face to load font */
face->font = NULL;
--- 6353,6359 ----
face->gc = 0;
/* Don't try to free the colors copied bitwise from BASE_FACE. */
! face->colors_copied_bitwise_p = 1;
/* to force realize_face to load font */
face->font = NULL;