diff options
| author | Chong Yidong | 2008-07-08 17:27:28 +0000 |
|---|---|---|
| committer | Chong Yidong | 2008-07-08 17:27:28 +0000 |
| commit | fa9fa316d40a544d8d3882b59e7dfae236f67c6f (patch) | |
| tree | 758676e385e4cd7d12b76af435a7db0d642dd92f /src | |
| parent | 7f000038fe3ba49e2cd2ba64de858bdbbca5f8e3 (diff) | |
| download | emacs-fa9fa316d40a544d8d3882b59e7dfae236f67c6f.tar.gz emacs-fa9fa316d40a544d8d3882b59e7dfae236f67c6f.zip | |
(Finternal_merge_in_global_face): Save merged attributes for the
default face back into the face vector.
Diffstat (limited to 'src')
| -rw-r--r-- | src/xfaces.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/xfaces.c b/src/xfaces.c index ed802b03f7c..87a9006ae22 100644 --- a/src/xfaces.c +++ b/src/xfaces.c | |||
| @@ -3966,7 +3966,7 @@ Default face attributes override any local face attributes. */) | |||
| 3966 | else if (! UNSPECIFIEDP (gvec[i])) | 3966 | else if (! UNSPECIFIEDP (gvec[i])) |
| 3967 | lvec[i] = gvec[i]; | 3967 | lvec[i] = gvec[i]; |
| 3968 | 3968 | ||
| 3969 | /* If the default face was changed, realize it again, and update the | 3969 | /* If the default face was changed, update the face cache and the |
| 3970 | `font' frame parameter. */ | 3970 | `font' frame parameter. */ |
| 3971 | if (EQ (face, Qdefault)) | 3971 | if (EQ (face, Qdefault)) |
| 3972 | { | 3972 | { |
| @@ -3977,9 +3977,12 @@ Default face attributes override any local face attributes. */) | |||
| 3977 | /* This can be NULL (e.g., in batch mode). */ | 3977 | /* This can be NULL (e.g., in batch mode). */ |
| 3978 | if (oldface) | 3978 | if (oldface) |
| 3979 | { | 3979 | { |
| 3980 | /* Ensure that the face vector is fully specified by merging | ||
| 3981 | the previously-cached vector. */ | ||
| 3980 | bcopy (oldface->lface, attrs, sizeof attrs); | 3982 | bcopy (oldface->lface, attrs, sizeof attrs); |
| 3981 | merge_face_vectors (f, lvec, attrs, 0); | 3983 | merge_face_vectors (f, lvec, attrs, 0); |
| 3982 | newface = realize_face (c, attrs, DEFAULT_FACE_ID); | 3984 | bcopy (attrs, lvec, sizeof attrs); |
| 3985 | newface = realize_face (c, lvec, DEFAULT_FACE_ID); | ||
| 3983 | 3986 | ||
| 3984 | if ((! UNSPECIFIEDP (gvec[LFACE_FAMILY_INDEX]) | 3987 | if ((! UNSPECIFIEDP (gvec[LFACE_FAMILY_INDEX]) |
| 3985 | || ! UNSPECIFIEDP (gvec[LFACE_FOUNDRY_INDEX]) | 3988 | || ! UNSPECIFIEDP (gvec[LFACE_FOUNDRY_INDEX]) |