Mercurial > emacs
changeset 43270:935816913346
(Finternal_make_lisp_face, Finternal_copy_lisp_face)
(update_face_from_frame_parameter): Increment face_change_count
and windows_or_buffers_changed to force redisplay using changed faces.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Wed, 13 Feb 2002 16:21:07 +0000 |
parents | f4b001827b85 |
children | a8329a91e9b5 |
files | src/xfaces.c |
diffstat | 1 files changed, 24 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/xfaces.c Wed Feb 13 16:15:52 2002 +0000 +++ b/src/xfaces.c Wed Feb 13 16:21:07 2002 +0000 @@ -3687,6 +3687,14 @@ else lface = global_lface; + /* Changing a named face means that all realized faces depending on + that face are invalid. Since we cannot tell which realized faces + depend on the face, make sure they are all removed. This is done + by incrementing face_change_count. The next call to + init_iterator will then free realized faces. */ + ++face_change_count; + ++windows_or_buffers_changed; + xassert (LFACEP (lface)); check_lface (lface); return lface; @@ -3754,6 +3762,14 @@ bcopy (XVECTOR (lface)->contents, XVECTOR (copy)->contents, LFACE_VECTOR_SIZE * sizeof (Lisp_Object)); + /* Changing a named face means that all realized faces depending on + that face are invalid. Since we cannot tell which realized faces + depend on the face, make sure they are all removed. This is done + by incrementing face_change_count. The next call to + init_iterator will then free realized faces. */ + ++face_change_count; + ++windows_or_buffers_changed; + return to; } @@ -4264,6 +4280,14 @@ if (NILP (f->face_alist)) return; + /* Changing a named face means that all realized faces depending on + that face are invalid. Since we cannot tell which realized faces + depend on the face, make sure they are all removed. This is done + by incrementing face_change_count. The next call to + init_iterator will then free realized faces. */ + ++face_change_count; + ++windows_or_buffers_changed; + if (EQ (param, Qforeground_color)) { lface = lface_from_face_name (f, Qdefault, 1);