GNU bug report logs - #15788
24.3.50; Can't change the default face's attributes

Previous Next

Package: emacs;

Reported by: Dmitry Gutov <dgutov <at> yandex.ru>

Date: Sat, 2 Nov 2013 04:24:01 UTC

Severity: normal

Found in version 24.3.50

Done: Jan Djärv <jan.h.d <at> swipnet.se>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 15788 in the body.
You can then email your comments to 15788 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#15788; Package emacs. (Sat, 02 Nov 2013 04:24:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Dmitry Gutov <dgutov <at> yandex.ru>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Sat, 02 Nov 2013 04:24:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Dmitry Gutov <dgutov <at> yandex.ru>
To: bug-gnu-emacs <at> gnu.org
Subject: 24.3.50; Can't change the default face's attributes
Date: Sat, 02 Nov 2013 08:22:35 +0400
Specifically, this code does nothing, irrespective of values of height
and family:

(set-face-attribute 'default nil :height 105 :family "Fira Mono")

'bzr bisect' points to revision 114895
(jan.h.d <at> swipnet.se-20131101154710-ezqhdstjaw50z93h)


In GNU Emacs 24.3.50.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.6.4)
 of 2013-11-02 on axl
Bzr revision: 114899 dgutov <at> yandex.ru-20131102011010-xza6v86dyv6l59rk
Windowing system distributor `The X.Org Foundation', version 11.0.11303000
System Description:	Ubuntu 13.04




Reply sent to Jan Djärv <jan.h.d <at> swipnet.se>:
You have taken responsibility. (Sat, 02 Nov 2013 08:05:01 GMT) Full text and rfc822 format available.

Notification sent to Dmitry Gutov <dgutov <at> yandex.ru>:
bug acknowledged by developer. (Sat, 02 Nov 2013 08:05:03 GMT) Full text and rfc822 format available.

Message #10 received at 15788-done <at> debbugs.gnu.org (full text, mbox):

From: Jan Djärv <jan.h.d <at> swipnet.se>
To: Dmitry Gutov <dgutov <at> yandex.ru>
Cc: 15788-done <at> debbugs.gnu.org
Subject: Re: bug#15788: 24.3.50; Can't change the default face's attributes
Date: Sat, 2 Nov 2013 09:02:23 +0100
Fixed.

	Jan D.

2 nov 2013 kl. 05:22 skrev Dmitry Gutov <dgutov <at> yandex.ru>:

> Specifically, this code does nothing, irrespective of values of height
> and family:
> 
> (set-face-attribute 'default nil :height 105 :family "Fira Mono")
> 
> 'bzr bisect' points to revision 114895
> (jan.h.d <at> swipnet.se-20131101154710-ezqhdstjaw50z93h)
> 
> 
> In GNU Emacs 24.3.50.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.6.4)
> of 2013-11-02 on axl
> Bzr revision: 114899 dgutov <at> yandex.ru-20131102011010-xza6v86dyv6l59rk
> Windowing system distributor `The X.Org Foundation', version 11.0.11303000
> System Description:	Ubuntu 13.04
> 
> 





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#15788; Package emacs. (Sat, 02 Nov 2013 11:56:02 GMT) Full text and rfc822 format available.

Message #13 received at 15788 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Jan Djärv <jan.h.d <at> swipnet.se>
Cc: 15788 <at> debbugs.gnu.org
Subject: Re: bug#15788: 24.3.50; Can't change the default face's attributes
Date: Sat, 02 Nov 2013 13:54:39 +0200
> From: Jan Djärv <jan.h.d <at> swipnet.se>
> Date: Sat, 2 Nov 2013 09:02:23 +0100
> Cc: 15788-done <at> debbugs.gnu.org
> 
> Fixed.
> 
> 	Jan D.
> 
> 2 nov 2013 kl. 05:22 skrev Dmitry Gutov <dgutov <at> yandex.ru>:
> 
> > Specifically, this code does nothing, irrespective of values of height
> > and family:
> > 
> > (set-face-attribute 'default nil :height 105 :family "Fira Mono")
> > 
> > 'bzr bisect' points to revision 114895
> > (jan.h.d <at> swipnet.se-20131101154710-ezqhdstjaw50z93h)
> > 
> > 
> > In GNU Emacs 24.3.50.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.6.4)
> > of 2013-11-02 on axl
> > Bzr revision: 114899 dgutov <at> yandex.ru-20131102011010-xza6v86dyv6l59rk
> > Windowing system distributor `The X.Org Foundation', version 11.0.11303000
> > System Description:	Ubuntu 13.04

Unfortunately, the fix breaks the w32 build: it hits assertion
violation at startup.  The details are below.  Let me know how can I
help you debug this.

  xfaces.c:1810: Emacs fatal error: assertion failed: UNSPECIFIEDP (attrs[LFACE_DISTANT_FOREGROUND_INDEX]) || IGNORE_DEFFACE_P (attrs[LFACE_DISTANT_FOREGROUND_INDEX]) || STRINGP (attrs[LFACE_DISTANT_FOREGROUND_INDEX])

  Breakpoint 1, terminate_due_to_signal (sig=22, backtrace_limit=2147483647)
      at emacs.c:350
  350       signal (sig, SIG_DFL);
  (gdb) bt
  #0  terminate_due_to_signal (sig=22, backtrace_limit=2147483647)
      at emacs.c:350
  #1  0x0115b5bc in die (
      msg=0x148e7e4 <DEFAULT_REHASH_SIZE+3612> "UNSPECIFIEDP (attrs[LFACE_DISTANT_FOREGROUND_INDEX]) || IGNORE_DEFFACE_P (attrs[LFACE_DISTANT_FOREGROUND_INDEX]) || STRINGP (attrs[LFACE_DISTANT_FOREGROUND_INDEX])",
      file=0x148d9d0 <DEFAULT_REHASH_SIZE+8> "xfaces.c", line=1810)
      at alloc.c:6698
  #2  0x010d6a49 in check_lface_attrs (attrs=0x379ab54) at xfaces.c:1808
  #3  0x010d6cc8 in check_lface (lface=58305365) at xfaces.c:1842
  #4  0x010de9c9 in realize_default_face (f=0x35a74b8) at xfaces.c:5381
  #5  0x010de16c in realize_basic_faces (f=0x35a74b8) at xfaces.c:5247
  #6  0x010d43a3 in recompute_basic_faces (f=0x35a74b8) at xfaces.c:735
  #7  0x010247e6 in init_iterator (it=0x82e650, w=0x35a7720, charpos=1,
      bytepos=1, row=0x0, base_face_id=DEFAULT_FACE_ID) at xdisp.c:2706
  #8  0x01039452 in resize_mini_window (w=0x35a7720, exact_p=1) at xdisp.c:10406
  #9  0x01011162 in do_switch_frame (frame=57293069, track=1, for_deletion=0,
      norecord=56191026) at frame.c:832
  #10 0x010116e0 in Fselect_frame (frame=57293069, norecord=56191026)
      at frame.c:885
  #11 0x010800b9 in select_frame_norecord (frame=57293069) at window.c:3061
  #12 0x01080247 in run_window_configuration_change_hook (f=0x36a3908)
      at window.c:3085
  #13 0x011ed565 in x_set_tool_bar_lines (f=0x36a3908, value=4, oldval=56191002)
      at w32fns.c:1717
  #14 0x0101649e in x_set_frame_parameters (f=0x36a3908, alist=56191002)
      at frame.c:2801
  #15 0x0101924d in x_default_parameter (f=0x36a3908, alist=56171710,
      prop=56334746, deflt=4, xprop=0x0, xclass=0x0, type=RES_TYPE_NUMBER)
      at frame.c:3821
  #16 0x011f3599 in Fx_create_frame (parameters=56171710) at w32fns.c:4491

  Lisp Backtrace:
  "x-create-frame" (0x82f288)
  "x-create-frame-with-faces" (0x82f488)
  "make-frame" (0x82f688)
  "frame-initialize" (0x82f888)
  "command-line" (0x82fabc)
  "normal-top-level" (0x82fc70)
  (gdb) frame 2
  #2  0x010d6a49 in check_lface_attrs (attrs=0x379ab54) at xfaces.c:1808
  1808      eassert (UNSPECIFIEDP (attrs[LFACE_DISTANT_FOREGROUND_INDEX])
  (gdb) l
  1803               || IGNORE_DEFFACE_P (attrs[LFACE_INVERSE_INDEX])
  1804               || SYMBOLP (attrs[LFACE_INVERSE_INDEX]));
  1805      eassert (UNSPECIFIEDP (attrs[LFACE_FOREGROUND_INDEX])
  1806               || IGNORE_DEFFACE_P (attrs[LFACE_FOREGROUND_INDEX])
  1807               || STRINGP (attrs[LFACE_FOREGROUND_INDEX]));
  1808      eassert (UNSPECIFIEDP (attrs[LFACE_DISTANT_FOREGROUND_INDEX])
  1809               || IGNORE_DEFFACE_P (attrs[LFACE_DISTANT_FOREGROUND_INDEX])
  1810               || STRINGP (attrs[LFACE_DISTANT_FOREGROUND_INDEX]));
  1811      eassert (UNSPECIFIEDP (attrs[LFACE_BACKGROUND_INDEX])
  1812               || IGNORE_DEFFACE_P (attrs[LFACE_BACKGROUND_INDEX])
  (gdb) p attrs[LFACE_DISTANT_FOREGROUND_INDEX]
  $1 = 56191002
  (gdb) xtype
  Lisp_Symbol
  (gdb) xsymbol
  $2 = (struct Lisp_Symbol *) 0x3596818
  "nil"




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#15788; Package emacs. (Sat, 02 Nov 2013 12:13:02 GMT) Full text and rfc822 format available.

Message #16 received at 15788 <at> debbugs.gnu.org (full text, mbox):

From: Jan Djärv <jan.h.d <at> swipnet.se>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 15788 <at> debbugs.gnu.org
Subject: Re: bug#15788: 24.3.50; Can't change the default face's attributes
Date: Sat, 02 Nov 2013 13:12:25 +0100
Hello.

2013-11-02 12:54, Eli Zaretskii skrev:
>> From: Jan Djärv <jan.h.d <at> swipnet.se>
>> Date: Sat, 2 Nov 2013 09:02:23 +0100
>> Cc: 15788-done <at> debbugs.gnu.org
>>
>> Fixed.
>>
>> 	Jan D.
>>
>> 2 nov 2013 kl. 05:22 skrev Dmitry Gutov <dgutov <at> yandex.ru>:
>>
>>> Specifically, this code does nothing, irrespective of values of height
>>> and family:
>>>
>>> (set-face-attribute 'default nil :height 105 :family "Fira Mono")
>>>
>>> 'bzr bisect' points to revision 114895
>>> (jan.h.d <at> swipnet.se-20131101154710-ezqhdstjaw50z93h)
>>>
>>>
>>> In GNU Emacs 24.3.50.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.6.4)
>>> of 2013-11-02 on axl
>>> Bzr revision: 114899 dgutov <at> yandex.ru-20131102011010-xza6v86dyv6l59rk
>>> Windowing system distributor `The X.Org Foundation', version 11.0.11303000
>>> System Description:	Ubuntu 13.04
>
> Unfortunately, the fix breaks the w32 build: it hits assertion
> violation at startup.  The details are below.  Let me know how can I
> help you debug this.
>

What is the value of attrs[LFACE_DISTANT_FOREGROUND_INDEX])?

	Jan D.

>    xfaces.c:1810: Emacs fatal error: assertion failed: UNSPECIFIEDP (attrs[LFACE_DISTANT_FOREGROUND_INDEX]) || IGNORE_DEFFACE_P (attrs[LFACE_DISTANT_FOREGROUND_INDEX]) || STRINGP (attrs[LFACE_DISTANT_FOREGROUND_INDEX])
>
>    Breakpoint 1, terminate_due_to_signal (sig=22, backtrace_limit=2147483647)
>        at emacs.c:350
>    350       signal (sig, SIG_DFL);
>    (gdb) bt
>    #0  terminate_due_to_signal (sig=22, backtrace_limit=2147483647)
>        at emacs.c:350
>    #1  0x0115b5bc in die (
>        msg=0x148e7e4 <DEFAULT_REHASH_SIZE+3612> "UNSPECIFIEDP (attrs[LFACE_DISTANT_FOREGROUND_INDEX]) || IGNORE_DEFFACE_P (attrs[LFACE_DISTANT_FOREGROUND_INDEX]) || STRINGP (attrs[LFACE_DISTANT_FOREGROUND_INDEX])",
>        file=0x148d9d0 <DEFAULT_REHASH_SIZE+8> "xfaces.c", line=1810)
>        at alloc.c:6698
>    #2  0x010d6a49 in check_lface_attrs (attrs=0x379ab54) at xfaces.c:1808
>    #3  0x010d6cc8 in check_lface (lface=58305365) at xfaces.c:1842
>    #4  0x010de9c9 in realize_default_face (f=0x35a74b8) at xfaces.c:5381
>    #5  0x010de16c in realize_basic_faces (f=0x35a74b8) at xfaces.c:5247
>    #6  0x010d43a3 in recompute_basic_faces (f=0x35a74b8) at xfaces.c:735
>    #7  0x010247e6 in init_iterator (it=0x82e650, w=0x35a7720, charpos=1,
>        bytepos=1, row=0x0, base_face_id=DEFAULT_FACE_ID) at xdisp.c:2706
>    #8  0x01039452 in resize_mini_window (w=0x35a7720, exact_p=1) at xdisp.c:10406
>    #9  0x01011162 in do_switch_frame (frame=57293069, track=1, for_deletion=0,
>        norecord=56191026) at frame.c:832
>    #10 0x010116e0 in Fselect_frame (frame=57293069, norecord=56191026)
>        at frame.c:885
>    #11 0x010800b9 in select_frame_norecord (frame=57293069) at window.c:3061
>    #12 0x01080247 in run_window_configuration_change_hook (f=0x36a3908)
>        at window.c:3085
>    #13 0x011ed565 in x_set_tool_bar_lines (f=0x36a3908, value=4, oldval=56191002)
>        at w32fns.c:1717
>    #14 0x0101649e in x_set_frame_parameters (f=0x36a3908, alist=56191002)
>        at frame.c:2801
>    #15 0x0101924d in x_default_parameter (f=0x36a3908, alist=56171710,
>        prop=56334746, deflt=4, xprop=0x0, xclass=0x0, type=RES_TYPE_NUMBER)
>        at frame.c:3821
>    #16 0x011f3599 in Fx_create_frame (parameters=56171710) at w32fns.c:4491
>
>    Lisp Backtrace:
>    "x-create-frame" (0x82f288)
>    "x-create-frame-with-faces" (0x82f488)
>    "make-frame" (0x82f688)
>    "frame-initialize" (0x82f888)
>    "command-line" (0x82fabc)
>    "normal-top-level" (0x82fc70)
>    (gdb) frame 2
>    #2  0x010d6a49 in check_lface_attrs (attrs=0x379ab54) at xfaces.c:1808
>    1808      eassert (UNSPECIFIEDP (attrs[LFACE_DISTANT_FOREGROUND_INDEX])
>    (gdb) l
>    1803               || IGNORE_DEFFACE_P (attrs[LFACE_INVERSE_INDEX])
>    1804               || SYMBOLP (attrs[LFACE_INVERSE_INDEX]));
>    1805      eassert (UNSPECIFIEDP (attrs[LFACE_FOREGROUND_INDEX])
>    1806               || IGNORE_DEFFACE_P (attrs[LFACE_FOREGROUND_INDEX])
>    1807               || STRINGP (attrs[LFACE_FOREGROUND_INDEX]));
>    1808      eassert (UNSPECIFIEDP (attrs[LFACE_DISTANT_FOREGROUND_INDEX])
>    1809               || IGNORE_DEFFACE_P (attrs[LFACE_DISTANT_FOREGROUND_INDEX])
>    1810               || STRINGP (attrs[LFACE_DISTANT_FOREGROUND_INDEX]));
>    1811      eassert (UNSPECIFIEDP (attrs[LFACE_BACKGROUND_INDEX])
>    1812               || IGNORE_DEFFACE_P (attrs[LFACE_BACKGROUND_INDEX])
>    (gdb) p attrs[LFACE_DISTANT_FOREGROUND_INDEX]
>    $1 = 56191002
>    (gdb) xtype
>    Lisp_Symbol
>    (gdb) xsymbol
>    $2 = (struct Lisp_Symbol *) 0x3596818
>    "nil"
>





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#15788; Package emacs. (Sat, 02 Nov 2013 12:50:02 GMT) Full text and rfc822 format available.

Message #19 received at 15788 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Jan Djärv <jan.h.d <at> swipnet.se>
Cc: 15788 <at> debbugs.gnu.org
Subject: Re: bug#15788: 24.3.50; Can't change the default face's attributes
Date: Sat, 02 Nov 2013 14:49:27 +0200
> Date: Sat, 02 Nov 2013 13:12:25 +0100
> From: Jan Djärv <jan.h.d <at> swipnet.se>
> CC: 15788 <at> debbugs.gnu.org
> 
> What is the value of attrs[LFACE_DISTANT_FOREGROUND_INDEX])?

I've shown it at the end of the backtrace I sent: the value is nil.
Here:

> >    #2  0x010d6a49 in check_lface_attrs (attrs=0x379ab54) at xfaces.c:1808
> >    1808      eassert (UNSPECIFIEDP (attrs[LFACE_DISTANT_FOREGROUND_INDEX])
> >    (gdb) l
> >    1803               || IGNORE_DEFFACE_P (attrs[LFACE_INVERSE_INDEX])
> >    1804               || SYMBOLP (attrs[LFACE_INVERSE_INDEX]));
> >    1805      eassert (UNSPECIFIEDP (attrs[LFACE_FOREGROUND_INDEX])
> >    1806               || IGNORE_DEFFACE_P (attrs[LFACE_FOREGROUND_INDEX])
> >    1807               || STRINGP (attrs[LFACE_FOREGROUND_INDEX]));
> >    1808      eassert (UNSPECIFIEDP (attrs[LFACE_DISTANT_FOREGROUND_INDEX])
> >    1809               || IGNORE_DEFFACE_P (attrs[LFACE_DISTANT_FOREGROUND_INDEX])
> >    1810               || STRINGP (attrs[LFACE_DISTANT_FOREGROUND_INDEX]));
> >    1811      eassert (UNSPECIFIEDP (attrs[LFACE_BACKGROUND_INDEX])
> >    1812               || IGNORE_DEFFACE_P (attrs[LFACE_BACKGROUND_INDEX])
> >    (gdb) p attrs[LFACE_DISTANT_FOREGROUND_INDEX]
> >    $1 = 56191002
> >    (gdb) xtype
> >    Lisp_Symbol
> >    (gdb) xsymbol
> >    $2 = (struct Lisp_Symbol *) 0x3596818
> >    "nil"




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#15788; Package emacs. (Sat, 02 Nov 2013 13:16:02 GMT) Full text and rfc822 format available.

Message #22 received at 15788 <at> debbugs.gnu.org (full text, mbox):

From: Jan Djärv <jan.h.d <at> swipnet.se>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 15788 <at> debbugs.gnu.org
Subject: Re: bug#15788: 24.3.50; Can't change the default face's attributes
Date: Sat, 02 Nov 2013 14:15:07 +0100
Hello.

2013-11-02 13:49, Eli Zaretskii skrev:
>> Date: Sat, 02 Nov 2013 13:12:25 +0100
>> From: Jan Djärv <jan.h.d <at> swipnet.se>
>> CC: 15788 <at> debbugs.gnu.org
>>
>> What is the value of attrs[LFACE_DISTANT_FOREGROUND_INDEX])?
>
> I've shown it at the end of the backtrace I sent: the value is nil.

Sorry, missed that.
I've checked in a possible fix, can you try it?

Thanks,

	Jan D.

> Here:
>
>>>     #2  0x010d6a49 in check_lface_attrs (attrs=0x379ab54) at xfaces.c:1808
>>>     1808      eassert (UNSPECIFIEDP (attrs[LFACE_DISTANT_FOREGROUND_INDEX])
>>>     (gdb) l
>>>     1803               || IGNORE_DEFFACE_P (attrs[LFACE_INVERSE_INDEX])
>>>     1804               || SYMBOLP (attrs[LFACE_INVERSE_INDEX]));
>>>     1805      eassert (UNSPECIFIEDP (attrs[LFACE_FOREGROUND_INDEX])
>>>     1806               || IGNORE_DEFFACE_P (attrs[LFACE_FOREGROUND_INDEX])
>>>     1807               || STRINGP (attrs[LFACE_FOREGROUND_INDEX]));
>>>     1808      eassert (UNSPECIFIEDP (attrs[LFACE_DISTANT_FOREGROUND_INDEX])
>>>     1809               || IGNORE_DEFFACE_P (attrs[LFACE_DISTANT_FOREGROUND_INDEX])
>>>     1810               || STRINGP (attrs[LFACE_DISTANT_FOREGROUND_INDEX]));
>>>     1811      eassert (UNSPECIFIEDP (attrs[LFACE_BACKGROUND_INDEX])
>>>     1812               || IGNORE_DEFFACE_P (attrs[LFACE_BACKGROUND_INDEX])
>>>     (gdb) p attrs[LFACE_DISTANT_FOREGROUND_INDEX]
>>>     $1 = 56191002
>>>     (gdb) xtype
>>>     Lisp_Symbol
>>>     (gdb) xsymbol
>>>     $2 = (struct Lisp_Symbol *) 0x3596818
>>>     "nil"





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#15788; Package emacs. (Sat, 02 Nov 2013 14:19:02 GMT) Full text and rfc822 format available.

Message #25 received at 15788 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Jan Djärv <jan.h.d <at> swipnet.se>
Cc: 15788 <at> debbugs.gnu.org
Subject: Re: bug#15788: 24.3.50; Can't change the default face's attributes
Date: Sat, 02 Nov 2013 16:17:44 +0200
> Date: Sat, 02 Nov 2013 14:15:07 +0100
> From: Jan Djärv <jan.h.d <at> swipnet.se>
> CC: 15788 <at> debbugs.gnu.org
> 
> I've checked in a possible fix, can you try it?

Thanks, the problem is fixed.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sun, 01 Dec 2013 12:24:03 GMT) Full text and rfc822 format available.

This bug report was last modified 10 years and 173 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.