From: martin rudalics <rudalics@gmx.at>
To: Ian Miller <emacs@soroban.fastmail.fm>
Cc: 911@emacsbugs.donarmstrong.com
Subject: bug#911: 23.0.60; custom-set-faces causes "New Frame" to fail (max-specpdl-size)
Date: Tue, 16 Sep 2008 14:50:55 +0200 [thread overview]
Message-ID: <48CFABAF.5010707@gmx.at> (raw)
In-Reply-To: <20080916121149.GA19679@baso.home>
> When I tried to instrument those two functions, there was no problem
> with face-spec-recalc, but face-spec-set-2 refused to instrument
> with the following complaint:
>
> edebug-syntax-error: Invalid read syntax: "Expected lambda expression"
Sorry. Please append the code below at the end of your .emacs and send
me the contents of the *face-spec-set-2* buffer after the bug occurred.
Thanks, martin.
;;;; Code starts here
(require 'cl)
(require 'faces)
(defun face-spec-set-2 (face frame spec)
"Set the face attributes of FACE on FRAME according to SPEC."
(with-current-buffer (get-buffer-create "*face-spec-set-2*")
(insert
(format "face %s frame %s spec %s" face frame spec))
(insert "\n"))
(let* ((attrs (face-spec-choose spec frame)))
(while attrs
(let ((attribute (car attrs))
(value (car (cdr attrs))))
;; Support some old-style attribute names and values.
(case attribute
(:bold (setq attribute :weight value (if value 'bold 'normal)))
(:italic (setq attribute :slant value (if value 'italic 'normal)))
((:foreground :background)
;; Compatibility with 20.x. Some bogus face specs seem to
;; exist containing things like `:foreground nil'.
(if (null value) (setq value 'unspecified)))
(t (unless (assq attribute face-x-resources)
(setq attribute nil))))
(when attribute
(set-face-attribute face frame attribute value)))
(setq attrs (cdr (cdr attrs))))))
;;;; Code ends here
next prev parent reply other threads:[~2008-09-16 12:50 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-09-07 14:23 bug#911: 23.0.60; custom-set-faces causes "New Frame" to fail (max-specpdl-size) martin rudalics
2008-09-07 16:56 ` Ian Miller
2008-09-07 18:47 ` martin rudalics
2008-09-07 23:42 ` Ian Miller
2008-09-08 13:29 ` martin rudalics
2008-09-14 13:50 ` martin rudalics
2008-09-16 12:11 ` Ian Miller
2008-09-16 12:50 ` martin rudalics [this message]
[not found] ` <20080916141738.GA3025@baso.home>
2008-09-16 14:54 ` martin rudalics
[not found] ` <48CFCA45.8050201@gmx.at>
2008-09-17 10:41 ` Ian Miller
[not found] ` <48D11231.3050707@gmx.at>
[not found] ` <20080917153343.GA3925@baso.home>
[not found] ` <48D12A4A.2010003@gmx.at>
[not found] ` <20080919180120.GA22672@baso.home>
[not found] ` <48D3F7B6.1050001@gmx.at>
[not found] ` <20080919195533.GA27756@baso.home>
2008-09-21 18:30 ` martin rudalics
-- strict thread matches above, loose matches on Subject: below --
2008-09-07 11:36 Ian Miller
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=48CFABAF.5010707@gmx.at \
--to=rudalics@gmx.at \
--cc=911@emacsbugs.donarmstrong.com \
--cc=emacs@soroban.fastmail.fm \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.