]> git.eshelyaron.com Git - emacs.git/commitdiff
* xfaces.c (Finternal_set_lisp_face_attribute): Use
authorChong Yidong <cyd@stupidchicken.com>
Sun, 20 Nov 2005 15:22:31 +0000 (15:22 +0000)
committerChong Yidong <cyd@stupidchicken.com>
Sun, 20 Nov 2005 15:22:31 +0000 (15:22 +0000)
:ignore-defface for new frame defaults when `unspecified' is
supplied.
(Finternal_get_lisp_face_attribute): Hide :ignore-defface.

src/ChangeLog
src/xfaces.c

index 548b9b1b959b68708feb4a55bd32240c29a8bcac..e70e00e2f577c8c5f4d2acde1ebee39d85595b46 100644 (file)
@@ -1,3 +1,10 @@
+2005-11-20  Chong Yidong  <cyd@stupidchicken.com>
+
+       * xfaces.c (Finternal_set_lisp_face_attribute): Use
+       :ignore-defface for new frame defaults when `unspecified' is
+       supplied.
+       (Finternal_get_lisp_face_attribute): Hide :ignore-defface.
+
 2005-11-20  Juri Linkov  <juri@jurta.org>
 
        * charset.c (invalid_character): Use Lisp-readable syntax
index 89fad414153cdede6260511b7e237700662961f8..8729441925a63091ba4a815bd6bb0572341103b6 100644 (file)
@@ -4054,7 +4054,11 @@ FRAME 0 means change the face on all frames, and change the default
 
   /* Set lface to the Lisp attribute vector of FACE.  */
   if (EQ (frame, Qt))
-    lface = lface_from_face_name (NULL, face, 1);
+    {
+      lface = lface_from_face_name (NULL, face, 1);
+      if (UNSPECIFIEDP (value))
+       value = Qignore_defface;
+    }
   else
     {
       if (NILP (frame))
@@ -4880,6 +4884,9 @@ frames).  If FRAME is omitted or nil, use the selected frame.  */)
   else
     signal_error ("Invalid face attribute name", keyword);
 
+  if (IGNORE_DEFFACE_P (value))
+    return Qunspecified;
+
   return value;
 }