# HG changeset patch # User Juri Linkov # Date 1119369591 0 # Node ID da180163f2f6d72c51c15737781a4eb9672c953a # Parent 83144542b6da825ce38c74b11fc1cdc08fbc1438 (edebug-eval-defun): Set `saved-face' temporarily to nil before calling form. Set `customized-face' to the new spec after that. diff -r 83144542b6da -r da180163f2f6 lisp/emacs-lisp/edebug.el --- a/lisp/emacs-lisp/edebug.el Tue Jun 21 15:59:33 2005 +0000 +++ b/lisp/emacs-lisp/edebug.el Tue Jun 21 15:59:51 2005 +0000 @@ -511,9 +511,16 @@ (set-default (nth 1 form) (eval (nth 2 form)))) ((eq (car form) 'defface) ;; Reset the face. + (setq face-new-frame-defaults + (assq-delete-all (nth 1 form) face-new-frame-defaults)) (put (nth 1 form) 'face-defface-spec nil) - (setq face-new-frame-defaults - (assq-delete-all (nth 1 form) face-new-frame-defaults)))) + ;; See comments in `eval-defun-1' for purpose of code below + (setq form (prog1 `(prog1 ,form + (put ',(nth 1 form) 'saved-face + ',(get (nth 1 form) 'saved-face)) + (put ',(nth 1 form) 'customized-face + ',(nth 2 form))) + (put (nth 1 form) 'saved-face nil))))) (setq edebug-result (eval form)) (if (not edebugging) (princ edebug-result)