* bug#911: 23.0.60; custom-set-faces causes "New Frame" to fail (max-specpdl-size)
@ 2008-09-07 14:23 martin rudalics
2008-09-07 16:56 ` Ian Miller
0 siblings, 1 reply; 12+ messages in thread
From: martin rudalics @ 2008-09-07 14:23 UTC (permalink / raw)
To: 911; +Cc: Ian Miller
> Example custom-set-faces in .emacs that causes the bug:
>
> (custom-set-faces
> ;; custom-set-faces was added by Custom.
> ;; If you edit it by hand, you could mess it up, so be careful.
> ;; Your init file should contain only one such instance.
> ;; If there is more than one, they won't work right.
> '(default ((t (:stipple nil :background "DarkSlateGray"
> :foreground "wheat" :inverse-video nil :box nil :strike-through
> nil :overline nil :underline nil :slant normal :weight normal
> :height 121 :width normal :foundry "unknown" :family "DejaVu Sans Mono")))))
Can you reproduce the bug with an .emacs that contains just this form
and nothing else?
> display-color-cells: Variable binding depth exceeds max-specpdl-size
Does this occur in `x-display-color-cells'?
martin
^ permalink raw reply [flat|nested] 12+ messages in thread
* bug#911: 23.0.60; custom-set-faces causes "New Frame" to fail (max-specpdl-size)
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
0 siblings, 1 reply; 12+ messages in thread
From: Ian Miller @ 2008-09-07 16:56 UTC (permalink / raw)
To: martin rudalics; +Cc: 911
On Sun, Sep 07, 2008 at 04:23:42PM +0200, martin rudalics wrote:
> > Example custom-set-faces in .emacs that causes the bug:
> >
> > (custom-set-faces
> > ;; custom-set-faces was added by Custom.
> > ;; If you edit it by hand, you could mess it up, so be careful.
> > ;; Your init file should contain only one such instance.
> > ;; If there is more than one, they won't work right.
> > '(default ((t (:stipple nil :background "DarkSlateGray"
> > :foreground "wheat" :inverse-video nil :box nil :strike-through
> > nil :overline nil :underline nil :slant normal :weight normal
> > :height 121 :width normal :foundry "unknown" :family "DejaVu Sans Mono")))))
>
> Can you reproduce the bug with an .emacs that contains just this form
> and nothing else?
Yes. The bug is still present even when .emacs consists of only the above.
> > display-color-cells: Variable binding depth exceeds max-specpdl-size
>
> Does this occur in `x-display-color-cells'?
I'm not quite sure what you mean by this... but I can evaluate
(x-display-color-cells) in the scratch buffer without any apparent error?
(x-display-color-cells)
1677721
^ permalink raw reply [flat|nested] 12+ messages in thread
* bug#911: 23.0.60; custom-set-faces causes "New Frame" to fail (max-specpdl-size)
2008-09-07 16:56 ` Ian Miller
@ 2008-09-07 18:47 ` martin rudalics
2008-09-07 23:42 ` Ian Miller
0 siblings, 1 reply; 12+ messages in thread
From: martin rudalics @ 2008-09-07 18:47 UTC (permalink / raw)
To: Ian Miller; +Cc: 911
>> Can you reproduce the bug with an .emacs that contains just this form
>> and nothing else?
>
> Yes. The bug is still present even when .emacs consists of only the above.
And it happens when you evaluate that form in *scratch*? I'm asking
because I can't reproduce it here. Maybe you should also try with a
more recent checkout.
> I'm not quite sure what you mean by this... but I can evaluate
> (x-display-color-cells) in the scratch buffer without any apparent error?
>
> (x-display-color-cells)
> 1677721
I wondered what precisely in `display-color-cells' could trigger the
Variable binding depth exceeds max-specpdl-size. Can you debug
`display-color-cells'?
martin
^ permalink raw reply [flat|nested] 12+ messages in thread
* bug#911: 23.0.60; custom-set-faces causes "New Frame" to fail (max-specpdl-size)
2008-09-07 18:47 ` martin rudalics
@ 2008-09-07 23:42 ` Ian Miller
2008-09-08 13:29 ` martin rudalics
0 siblings, 1 reply; 12+ messages in thread
From: Ian Miller @ 2008-09-07 23:42 UTC (permalink / raw)
To: martin rudalics; +Cc: 911
On Sun, Sep 07, 2008 at 08:47:40PM +0200, martin rudalics wrote:
>
> And it happens when you evaluate that form in *scratch*? I'm asking
> because I can't reproduce it here. Maybe you should also try with a
> more recent checkout.
If I delete .emacs, and then evaluate the form in *scratch* then the
same symptoms occur.
If however, I first create a new frame, and then evaluate the form in
that new frame, then the symptoms only occur in the frame in which I
evaluated the form but I am able to create new frames (with the
new font colours) from every other frame, including the original.
I have tried this with the latest sources from CVS and get the same
results.
> I wondered what precisely in `display-color-cells' could trigger the
> Variable binding depth exceeds max-specpdl-size. Can you debug
> `display-color-cells'?
This is what I get if I toggle-debug-on-error
(I hope this is useful?):
Debugger entered--Lisp error: (error "Variable binding depth exceeds max-specpdl-size")
framep-on-display(#<frame emacs@baso 0xed2800>)
display-color-cells(#<frame emacs@baso 0xed2800>)
face-spec-set-match-display(((min-colors 88) (class color)) #<frame emacs@baso 0xed2800>)
face-spec-choose((((... ...) (:foreground "white" :background "blue1")) ((...) (:foreground "white" :background "blue")) (t (:slant italic))) #<frame emacs@baso 0xed2800>)
face-spec-match-p(custom-themed (((... ...) (:foreground "white" :background "blue1")) ((...) (:foreground "white" :background "blue")) (t (:slant italic))) #<frame emacs@baso 0xed2800>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "#ffffff" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "#ffffff")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t :stipple nil :background "#ffffff" :foreground "#000000" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 90 :width normal :foundry "unknown" :family "DejaVu Sans Mono")))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "DarkSlateGray" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "DarkSlateGray")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t (:stipple nil :background "DarkSlateGray" :foreground "wheat" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 121 :width normal :foundry "unknown" :family "DejaVu Sans Mono"))))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "#ffffff" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "#ffffff")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t :stipple nil :background "#ffffff" :foreground "#000000" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 90 :width normal :foundry "unknown" :family "DejaVu Sans Mono")))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "DarkSlateGray" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "DarkSlateGray")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t (:stipple nil :background "DarkSlateGray" :foreground "wheat" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 121 :width normal :foundry "unknown" :family "DejaVu Sans Mono"))))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "#ffffff" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "#ffffff")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t :stipple nil :background "#ffffff" :foreground "#000000" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 90 :width normal :foundry "unknown" :family "DejaVu Sans Mono")))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "DarkSlateGray" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "DarkSlateGray")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t (:stipple nil :background "DarkSlateGray" :foreground "wheat" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 121 :width normal :foundry "unknown" :family "DejaVu Sans Mono"))))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "#ffffff" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "#ffffff")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t :stipple nil :background "#ffffff" :foreground "#000000" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 90 :width normal :foundry "unknown" :family "DejaVu Sans Mono")))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "DarkSlateGray" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "DarkSlateGray")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t (:stipple nil :background "DarkSlateGray" :foreground "wheat" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 121 :width normal :foundry "unknown" :family "DejaVu Sans Mono"))))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "#ffffff" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "#ffffff")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t :stipple nil :background "#ffffff" :foreground "#000000" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 90 :width normal :foundry "unknown" :family "DejaVu Sans Mono")))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "DarkSlateGray" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "DarkSlateGray")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t (:stipple nil :background "DarkSlateGray" :foreground "wheat" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 121 :width normal :foundry "unknown" :family "DejaVu Sans Mono"))))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "#ffffff" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "#ffffff")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t :stipple nil :background "#ffffff" :foreground "#000000" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 90 :width normal :foundry "unknown" :family "DejaVu Sans Mono")))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "DarkSlateGray" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "DarkSlateGray")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t (:stipple nil :background "DarkSlateGray" :foreground "wheat" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 121 :width normal :foundry "unknown" :family "DejaVu Sans Mono"))))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "#ffffff" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "#ffffff")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t :stipple nil :background "#ffffff" :foreground "#000000" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 90 :width normal :foundry "unknown" :family "DejaVu Sans Mono")))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "DarkSlateGray" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "DarkSlateGray")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t (:stipple nil :background "DarkSlateGray" :foreground "wheat" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 121 :width normal :foundry "unknown" :family "DejaVu Sans Mono"))))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "#ffffff" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "#ffffff")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t :stipple nil :background "#ffffff" :foreground "#000000" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 90 :width normal :foundry "unknown" :family "DejaVu Sans Mono")))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "DarkSlateGray" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "DarkSlateGray")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t (:stipple nil :background "DarkSlateGray" :foreground "wheat" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 121 :width normal :foundry "unknown" :family "DejaVu Sans Mono"))))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "#ffffff" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "#ffffff")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t :stipple nil :background "#ffffff" :foreground "#000000" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 90 :width normal :foundry "unknown" :family "DejaVu Sans Mono")))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "DarkSlateGray" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "DarkSlateGray")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t (:stipple nil :background "DarkSlateGray" :foreground "wheat" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 121 :width normal :foundry "unknown" :family "DejaVu Sans Mono"))))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "#ffffff" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "#ffffff")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t :stipple nil :background "#ffffff" :foreground "#000000" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 90 :width normal :foundry "unknown" :family "DejaVu Sans Mono")))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "DarkSlateGray" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "DarkSlateGray")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t (:stipple nil :background "DarkSlateGray" :foreground "wheat" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 121 :width normal :foundry "unknown" :family "DejaVu Sans Mono"))))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "#ffffff" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "#ffffff")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t :stipple nil :background "#ffffff" :foreground "#000000" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 90 :width normal :foundry "unknown" :family "DejaVu Sans Mono")))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "DarkSlateGray" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "DarkSlateGray")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t (:stipple nil :background "DarkSlateGray" :foreground "wheat" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 121 :width normal :foundry "unknown" :family "DejaVu Sans Mono"))))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "#ffffff" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "#ffffff")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t :stipple nil :background "#ffffff" :foreground "#000000" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 90 :width normal :foundry "unknown" :family "DejaVu Sans Mono")))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "DarkSlateGray" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "DarkSlateGray")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t (:stipple nil :background "DarkSlateGray" :foreground "wheat" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 121 :width normal :foundry "unknown" :family "DejaVu Sans Mono"))))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "#ffffff" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "#ffffff")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t :stipple nil :background "#ffffff" :foreground "#000000" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 90 :width normal :foundry "unknown" :family "DejaVu Sans Mono")))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "DarkSlateGray" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "DarkSlateGray")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t (:stipple nil :background "DarkSlateGray" :foreground "wheat" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 121 :width normal :foundry "unknown" :family "DejaVu Sans Mono"))))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "#ffffff" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "#ffffff")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t :stipple nil :background "#ffffff" :foreground "#000000" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 90 :width normal :foundry "unknown" :family "DejaVu Sans Mono")))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "DarkSlateGray" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "DarkSlateGray")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t (:stipple nil :background "DarkSlateGray" :foreground "wheat" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 121 :width normal :foundry "unknown" :family "DejaVu Sans Mono"))))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "#ffffff" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "#ffffff")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t :stipple nil :background "#ffffff" :foreground "#000000" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 90 :width normal :foundry "unknown" :family "DejaVu Sans Mono")))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "DarkSlateGray" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "DarkSlateGray")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t (:stipple nil :background "DarkSlateGray" :foreground "wheat" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 121 :width normal :foundry "unknown" :family "DejaVu Sans Mono"))))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "#ffffff" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "#ffffff")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t :stipple nil :background "#ffffff" :foreground "#000000" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 90 :width normal :foundry "unknown" :family "DejaVu Sans Mono")))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "DarkSlateGray" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "DarkSlateGray")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t (:stipple nil :background "DarkSlateGray" :foreground "wheat" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 121 :width normal :foundry "unknown" :family "DejaVu Sans Mono"))))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "#ffffff" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "#ffffff")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t :stipple nil :background "#ffffff" :foreground "#000000" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 90 :width normal :foundry "unknown" :family "DejaVu Sans Mono")))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
internal-set-lisp-face-attribute(default :background "DarkSlateGray" #<frame emacs@baso 0x10107a0>)
set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "DarkSlateGray")
face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t (:stipple nil :background "DarkSlateGray" :foreground "wheat" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 121 :width normal :foundry "unknown" :family "DejaVu Sans Mono"))))
face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
x-create-frame-with-faces(nil)
make-frame()
make-frame-command()
call-interactively(make-frame-command nil nil)
^ permalink raw reply [flat|nested] 12+ messages in thread
* bug#911: 23.0.60; custom-set-faces causes "New Frame" to fail (max-specpdl-size)
2008-09-07 23:42 ` Ian Miller
@ 2008-09-08 13:29 ` martin rudalics
2008-09-14 13:50 ` martin rudalics
0 siblings, 1 reply; 12+ messages in thread
From: martin rudalics @ 2008-09-08 13:29 UTC (permalink / raw)
To: Ian Miller; +Cc: 911
> This is what I get if I toggle-debug-on-error
> (I hope this is useful?):
>
> Debugger entered--Lisp error: (error "Variable binding depth exceeds max-specpdl-size")
> framep-on-display(#<frame emacs@baso 0xed2800>)
> display-color-cells(#<frame emacs@baso 0xed2800>)
> face-spec-set-match-display(((min-colors 88) (class color)) #<frame emacs@baso 0xed2800>)
> face-spec-choose((((... ...) (:foreground "white" :background "blue1")) ((...) (:foreground "white" :background "blue")) (t (:slant italic))) #<frame emacs@baso 0xed2800>)
> face-spec-match-p(custom-themed (((... ...) (:foreground "white" :background "blue1")) ((...) (:foreground "white" :background "blue")) (t (:slant italic))) #<frame emacs@baso 0xed2800>)
> frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
> internal-set-lisp-face-attribute(default :background "#ffffff" #<frame emacs@baso 0x10107a0>)
> set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "#ffffff")
> face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t :stipple nil :background "#ffffff" :foreground "#000000" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 90 :width normal :foundry "unknown" :family "DejaVu Sans Mono")))
> face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
> frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
> internal-set-lisp-face-attribute(default :background "DarkSlateGray" #<frame emacs@baso 0x10107a0>)
> set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "DarkSlateGray")
> face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t (:stipple nil :background "DarkSlateGray" :foreground "wheat" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 121 :width normal :foundry "unknown" :family "DejaVu Sans Mono"))))
> face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
> frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
[...]
> internal-set-lisp-face-attribute(default :background "#ffffff" #<frame emacs@baso 0x10107a0>)
> set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "#ffffff")
> face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t :stipple nil :background "#ffffff" :foreground "#000000" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 90 :width normal :foundry "unknown" :family "DejaVu Sans Mono")))
> face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
> frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
> internal-set-lisp-face-attribute(default :background "DarkSlateGray" #<frame emacs@baso 0x10107a0>)
> set-face-attribute(default #<frame emacs@baso 0x10107a0> :background "DarkSlateGray")
> face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t (:stipple nil :background "DarkSlateGray" :foreground "wheat" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 121 :width normal :foundry "unknown" :family "DejaVu Sans Mono"))))
> face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
> frame-set-background-mode(#<frame emacs@baso 0x10107a0>)
> x-create-frame-with-faces(nil)
> make-frame()
> make-frame-command()
> call-interactively(make-frame-command nil nil)
IIUC it has entered infinite recursion where `frame-set-background-mode'
is entered over and over again. Somehow alternating between a "#ffffff"
and "DarkSlateGray" background, very interesting.
But I don't really understand where this happens :-(
martin
^ permalink raw reply [flat|nested] 12+ messages in thread
* bug#911: 23.0.60; custom-set-faces causes "New Frame" to fail (max-specpdl-size)
2008-09-08 13:29 ` martin rudalics
@ 2008-09-14 13:50 ` martin rudalics
2008-09-16 12:11 ` Ian Miller
0 siblings, 1 reply; 12+ messages in thread
From: martin rudalics @ 2008-09-14 13:50 UTC (permalink / raw)
To: 911; +Cc: Ian Miller
Ian,
I can't reproduce this here. Could your try to edebug the functions
`face-spec-set-2' and `face-spec-recalc' to find out why (or better how)
in the trace
> > face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t :stipple
> nil :background "#ffffff" :foreground "#000000" :inverse-video nil :box
> nil :strike-through nil :overline nil :underline nil :slant normal
> :weight normal :height 90 :width normal :foundry "unknown" :family
> "DejaVu Sans Mono")))
> > face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
[...]
> > face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t (:stipple
> nil :background "DarkSlateGray" :foreground "wheat" :inverse-video nil
> :box nil :strike-through nil :overline nil :underline nil :slant normal
> :weight normal :height 121 :width normal :foundry "unknown" :family
> "DejaVu Sans Mono"))))
> > face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
the function `face-spec-set-2' is called alternately with different
backgrounds. That is, edebug these two functions, call C-x 5 2 or
whatever you have to make a new frame, and tell me whether
(1) `face-spec-recalc' in one and the same call invokes
`face-spec-set-2' at least twice (where an invocation should cause
`face-spec-set-2' to really call `set-face-attributes'), or
(2) `face-spec-recalc' is called at least twice when making a new frame.
Please complain immediately whem my recipe is unclear.
Thanks in advance, martin.
^ permalink raw reply [flat|nested] 12+ messages in thread
* bug#911: 23.0.60; custom-set-faces causes "New Frame" to fail (max-specpdl-size)
2008-09-14 13:50 ` martin rudalics
@ 2008-09-16 12:11 ` Ian Miller
2008-09-16 12:50 ` martin rudalics
0 siblings, 1 reply; 12+ messages in thread
From: Ian Miller @ 2008-09-16 12:11 UTC (permalink / raw)
To: martin rudalics; +Cc: 911
On Sun, Sep 14, 2008 at 03:50:05PM +0200, martin rudalics wrote:
> Ian,
>
> I can't reproduce this here. Could your try to edebug the functions
> `face-spec-set-2' and `face-spec-recalc' to find out why (or better how)
> in the trace
>
> > > face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t :stipple
> > nil :background "#ffffff" :foreground "#000000" :inverse-video nil :box
> > nil :strike-through nil :overline nil :underline nil :slant normal
> > :weight normal :height 90 :width normal :foundry "unknown" :family
> > "DejaVu Sans Mono")))
> > > face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
> [...]
> > > face-spec-set-2(default #<frame emacs@baso 0x10107a0> ((t (:stipple
> > nil :background "DarkSlateGray" :foreground "wheat" :inverse-video nil
> > :box nil :strike-through nil :overline nil :underline nil :slant normal
> > :weight normal :height 121 :width normal :foundry "unknown" :family
> > "DejaVu Sans Mono"))))
> > > face-spec-recalc(default #<frame emacs@baso 0x10107a0>)
>
> the function `face-spec-set-2' is called alternately with different
> backgrounds. That is, edebug these two functions, call C-x 5 2 or
> whatever you have to make a new frame, and tell me whether
Martin,
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"
(defun face-spec-set-2 (face frame spec)
"Set the face attributes of FACE on FRAME according to SPEC."
(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)
^
this is the cursor marking the syntax error
> (1) `face-spec-recalc' in one and the same call invokes
> `face-spec-set-2' at least twice (where an invocation should cause
> `face-spec-set-2' to really call `set-face-attributes'), or
>
> (2) `face-spec-recalc' is called at least twice when making a new frame.
When I edebug face-spec-recalc and attempt to create a new frame, each
time I press 'T' to Trace Fast the function appears to be re-entered,
and this appears to go on indefinitely?
Additionally a frame *is* created now, but it does not appear
automatically on the screen - however, it can be accessed via the
Buffers->Frames menu, and it does not use the colour scheme specified
in .emacs.
Also, when edebug reaches face-spec-recalc, I get the following
console message with each subsequent step of edebug (sorry, I don't
know if this is relevant, I am a complete novice when it comes to
emacs debugging!):
(emacs:21944): Gtk-CRITICAL **: gtk_box_pack_start: assertion
`child->parent ==NULL' failed
cheers,
ian
^ permalink raw reply [flat|nested] 12+ messages in thread
* bug#911: 23.0.60; custom-set-faces causes "New Frame" to fail (max-specpdl-size)
2008-09-16 12:11 ` Ian Miller
@ 2008-09-16 12:50 ` martin rudalics
[not found] ` <20080916141738.GA3025@baso.home>
0 siblings, 1 reply; 12+ messages in thread
From: martin rudalics @ 2008-09-16 12:50 UTC (permalink / raw)
To: Ian Miller; +Cc: 911
> 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
^ permalink raw reply [flat|nested] 12+ messages in thread
* bug#911: 23.0.60; custom-set-faces causes "New Frame" to fail (max-specpdl-size)
@ 2008-09-07 11:36 Ian Miller
0 siblings, 0 replies; 12+ messages in thread
From: Ian Miller @ 2008-09-07 11:36 UTC (permalink / raw)
To: emacs-pretest-bug
Please write in English if possible, because the Emacs maintainers
usually do not have translators to read other languages for them.
Your bug report will be posted to the emacs-pretest-bug@gnu.org
mailing list.
Please describe exactly what actions triggered the bug
and the precise symptoms of the bug:
Whenever I select "File->New Frame" (C-x 5 2) a new frame does not
appear and I receive the message "Variable binding depth exceeds
max-specpdl-size".
This seems to be caused by any use of custom-set-faces in the
.emacs file. When I remove the custom-set-faces code from .emacs, the
bug does not occur.
Example custom-set-faces in .emacs that causes the bug:
(custom-set-faces
;; custom-set-faces was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
'(default ((t (:stipple nil :background "DarkSlateGray"
:foreground "wheat" :inverse-video nil :box nil :strike-through
nil :overline nil :underline nil :slant normal :weight normal
:height 121 :width normal :foundry "unknown" :family "DejaVu Sans Mono")))))
If Emacs crashed, and you have the Emacs process in the gdb debugger,
please include the output from the following gdb commands:
`bt full' and `xbacktrace'.
If you would like to further debug the crash, please read the file
/usr/share/emacs/23.0.60/etc/DEBUG for instructions.
In GNU Emacs 23.0.60.1 (x86_64-redhat-linux-gnu, GTK+ Version 2.12.11)
of 2008-08-01 on x86-1
Windowing system distributor `The X.Org Foundation', version
11.0.10499905
configured using `configure '--build=x86_64-redhat-linux-gnu'
'--host=x86_64-redhat-linux-gnu' '--target=x86_64-redhat-linux-gnu'
'--program-prefix=' '--prefix=/usr' '--exec-prefix=/usr'
'--bindir=/usr/bin' '--sbindir=/usr/sbin' '--sysconfdir=/etc'
'--datadir=/usr/share' '--includedir=/usr/include'
'--libdir=/usr/lib64' '--libexecdir=/usr/libexec'
'--localstatedir=/var' '--sharedstatedir=/usr/com'
'--mandir=/usr/share/man' '--infodir=/usr/share/info'
'build_alias=x86_64-redhat-linux-gnu'
'host_alias=x86_64-redhat-linux-gnu'
'target_alias=x86_64-redhat-linux-gnu' 'CFLAGS=-DMAIL_USE_LOCKF -O2
-g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector
--param=ssp-buffer-size=4 -m64 -mtune=generic''
Important settings:
value of $LC_ALL: nil
value of $LC_COLLATE: nil
value of $LC_CTYPE: nil
value of $LC_MESSAGES: nil
value of $LC_MONETARY: nil
value of $LC_NUMERIC: nil
value of $LC_TIME: nil
value of $LANG: en_GB.utf8
value of $XMODIFIERS: nil
locale-coding-system: utf-8-unix
default-enable-multibyte-characters: t
Major mode: Lisp Interaction
Minor modes in effect:
show-paren-mode: t
mouse-wheel-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
blink-cursor-mode: t
global-auto-composition-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
line-number-mode: t
transient-mark-mode: t
Recent input:
<help-echo> <help-echo> <help-echo> <help-echo> <help-echo>
<help-echo> <help-echo> <help-echo> <help-echo> <help-echo>
<help-echo> <help-echo> <help-echo> <help-echo> <help-echo>
<help-echo> <help-echo> <help-echo> <menu-bar> <file>
<make-frame> M-x r e p o <tab> r <tab> <return>
Recent messages:
Loading /usr/share/emacs/site-lisp/site-start.d/igrep-init.el
(source)...done
Loading /usr/share/emacs/site-lisp/site-start.d/muse-init.el
(source)...done
Loading /usr/share/emacs/site-lisp/site-start.d/php-mode-init.el
(source)...done
Loading /usr/share/emacs/site-lisp/site-start.d/po-mode-init.el
(source)...done
Loading /usr/share/emacs/site-lisp/site-start.d/rpm-spec-mode-init.el
(source)...done
Loading gnus...done
Loading paren...done
For information about GNU Emacs and the GNU system, type C-h C-a.
display-color-cells: Variable binding depth exceeds max-specpdl-size
Making completion list...
^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2008-09-21 18:30 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
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
[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
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).