all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
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 16:54:47 +0200	[thread overview]
Message-ID: <48CFC8B7.1040406@gmx.at> (raw)
In-Reply-To: <20080916141738.GA3025@baso.home>

 >> 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.
 >
 > Please see attached for contents of this buffer.

My bad.  When I tried this here it got me a buffer with a couple of
lines.  Yours is 600K :-( apologies to you and everyone on this list.

Please try again with the following (it should print only calls for the
default face and distinguish them according to where they are called in
`face-spec-recalc').  But please don't post it on the list this time if
it gets too large.

martin

;;;; Code starts here
(require 'cl)
(require 'faces)

(defvar face-counter 0)

(defun face-spec-recalc (face frame)
   "Reset the face attributes of FACE on FRAME according to its specs.
This applies the defface/custom spec first, then the custom theme specs,
then the override spec."
   (face-spec-reset-face face frame)
   (setq face-counter (1+ face-counter))
   (let ((face-sym (or (get face 'face-alias) face)))
     (or (get face 'customized-face)
	(get face 'saved-face)
	(progn
	  (when (eq face 'default)
	    (with-current-buffer (get-buffer-create "*face-spec-set-2*")
	      (insert
	       (format "%s-1 face %s frame %s spec %s\n" face-counter face frame spec))))
	  (face-spec-set-2 face frame (face-default-spec face))))
     (let ((theme-faces (reverse (get face-sym 'theme-face))))
       (dolist (spec theme-faces)
	(when (eq face 'default)
	  (with-current-buffer (get-buffer-create "*face-spec-set-2*")
	    (insert
	     (format "%s-2 face %s frame %s spec %s\n" face-counter face frame spec))))
	(face-spec-set-2 face frame (cadr spec))))
     (when (eq face 'default)
       (with-current-buffer (get-buffer-create "*face-spec-set-2*")
	(insert
	 (format "%s-3 face %s frame %s spec %s\n" face-counter face frame spec))))
     (face-spec-set-2 face frame (get face-sym 'face-override-spec))))
;;;; Code ends here






  parent reply	other threads:[~2008-09-16 14:54 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
     [not found]               ` <20080916141738.GA3025@baso.home>
2008-09-16 14:54                 ` martin rudalics [this message]
     [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=48CFC8B7.1040406@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.