# HG changeset patch # User Gerd Moellmann # Date 938289468 0 # Node ID 34c27e95b25434a16a4a99f46e8b311de7208181 # Parent bb0def5066862ec5c3f38aff51ac72115aaccb5a (face-differs-from-default-p): Compare face attributes individually. diff -r bb0def506686 -r 34c27e95b254 lisp/faces.el --- a/lisp/faces.el Sat Sep 25 12:35:20 1999 +0000 +++ b/lisp/faces.el Sat Sep 25 19:57:48 1999 +0000 @@ -219,8 +219,19 @@ actually specified in the same way (equal attributes) or if it is fully-unspecified, and thus inherits the attributes of any face it is displayed on top of." - (or (internal-lisp-face-empty-p face frame) - (not (internal-lisp-face-equal-p face 'default frame)))) + (cond ((eq frame t) (setq frame nil)) + ((null frame) (setq frame (selected-frame)))) + (let* ((v1 (internal-lisp-face-p face frame)) + (n (if v1 (length v1) 0)) + (v2 (internal-lisp-face-p 'default frame)) + (i 1)) + (unless v1 + (error "Not a face: %S" face)) + (while (and (< i n) + (or (eq 'unspecified (aref v1 i)) + (equal (aref v1 i) (aref v2 i)))) + (setq i (1+ i))) + (< i n))) (defun face-nontrivial-p (face &optional frame)