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

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

bug#3158: 23.0.92; assertion failure in fontset_find_font


From: YAMAMOTO Mitsuharu
Subject: bug#3158: 23.0.92; assertion failure in fontset_find_font
Date: Thu, 30 Apr 2009 14:54:37 +0900
User-agent: Wanderlust/2.14.0 (Africa) SEMI/1.14.6 (Maruoka) FLIM/1.14.8 (Shijō) APEL/10.6 Emacs/22.3 (sparc-sun-solaris2.8) MULE/5.0 (SAKAKI)

>>>>> On Thu, 30 Apr 2009 13:52:19 +0900, Kenichi Handa <handa@m17n.org> said:

>> >   1. Compile Emacs with "make CFLAGS='-g -DENABLE_CHECKING'"
>> >   2. emacs -Q
>> >   3. M-x list-charset-chars RET mac-roman RET
>> >
>> >   .../src/fontset.c:551: Emacs fatal error: assertion failed:
>> >   VECTORLIKEP((rfont_def))
>> >
>> > The value of rfont_def is nil when this failure happens.

>> I think the relevant code in fontset_find_font needs to check when
>> rfont_def is nil, and ignore those values.  Handa-san, could you verify?

> I fixed it by breaking the loop instead of ignoring that
> element because rfont_def nil means "don't try the remaining
> fonts and the fallback fonts".

I still have an assertion violation with the above procedure at a
different line:

...src/fontset.c:634: Emacs fatal error: assertion failed: 
VECTORLIKEP((rfont_def))

#3  0x0024256c in fontset_find_font (fontset=17306132, c=57374, face=0x10877e0, 
id=147, fallback=0) at /Users/mituharu/src/cvs/emacs-23/emacs/src/fontset.c:634
634               if (! EQ (RFONT_DEF_FONT_DEF (rfont_def), font_def))
(gdb) list
629              and supporting C. */
630           font_def = RFONT_DEF_FONT_DEF (rfont_def);
631           for (i++; i < ASIZE (vec); i++)
632             {
633               rfont_def = AREF (vec, i);
634               if (! EQ (RFONT_DEF_FONT_DEF (rfont_def), font_def))
635                 break;
636               font_object = RFONT_DEF_OBJECT (AREF (vec, i));
637               if (! NILP (font_object) && font_has_char (f, font_object, c))
638                 return rfont_def;
(gdb) call debug_print (rfont_def)
nil
(gdb) call debug_print (vec)
[[nil [#<font-spec nil nil nil nil iso10646-1 nil nil nil nil nil nil nil nil> 
142 nil] #<font-object "-bitstream-Bitstream Vera Sans 
Mono-normal-normal-normal-*-12-*-*-*-m-0-iso10646-1"> 0] nil]
(gdb) p i
$1 = 1

                                     YAMAMOTO Mitsuharu
                                mituharu@math.s.chiba-u.ac.jp






reply via email to

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