bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#911: bug#598: 23.0.60; frame size issue (--geometry or default-frame


From: Tim Van Holder
Subject: bug#911: bug#598: 23.0.60; frame size issue (--geometry or default-frame-alist) when using customized default face
Date: Wed, 1 Oct 2008 11:52:47 +0200

On Wed, Oct 1, 2008 at 10:47 AM, martin rudalics <rudalics@gmx.at> wrote:
>> I'm also getting max-specpdl-size exceeded on C-x 5 2, so I cannot check
>> the
>> previously observed behaviour that even when the initial frame is
>> erratically
>> sized, subsequent frames are fine.
>
> That's most likely bug#911 (aka nine-eleven) see
>
> http://emacsbugs.donarmstrong.com/cgi-bin/bugreport.cgi?bug=911
>
> Could you try the recipe Chong gave there?

I tried a slightly different recipe (below) and that made the error go away.
I assume Chong's will work as well - I just wanted to set the inhibit
flag as early as possible (and I wasn't 100% sure whether or not the let
would use the defvar'd flag instead of its own scoped var).

--- faces.el.~1.425.~   2008-09-25 10:49:34.000000000 +0200
+++ faces.el    2008-10-01 11:48:01.000000000 +0200
@@ -1839,10 +1839,13 @@ variable with `setq'; this won't have th
 (declare-function x-get-resource "frame.c"
                  (attribute class &optional component subclass))

+(defvar inhibit-frame-set-background-mode nil)
 (defun frame-set-background-mode (frame)
   "Set up display-dependent faces on FRAME.
 Display-dependent faces are those which have different definitions
 according to the `background-mode' and `display-type' frame parameters."
+  (unless inhibit-frame-set-background-mode
+    (setq inhibit-frame-set-background-mode t)
   (let* ((bg-resource
          (and (window-system frame)
               (x-get-resource "backgroundMode" "BackgroundMode")))
@@ -1914,7 +1917,8 @@ according to the `background-mode' and `
        ;; parameters, unless they have been locally modified.
        (dolist (face (face-list))
          (unless (memq face locally-modified-faces)
-           (face-spec-recalc face frame)))))))
+           (face-spec-recalc face frame))))))
+      (setq inhibit-frame-set-background-mode nil)))

 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;






reply via email to

[Prev in Thread] Current Thread [Next in Thread]