[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