--- Begin Message ---
Subject: |
23.0.92; assertion failure in fontset_find_font |
Date: |
Wed, 29 Apr 2009 10:58:04 +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) |
Steps to reproduce:
1. Compile Emacs with "make CFLAGS='-g -DENABLE_CHECKING'"
2. emacs -Q
3. M-x list-charset-chars RET mac-roman RET
Result:
.../src/fontset.c:551: Emacs fatal error: assertion failed:
VECTORLIKEP((rfont_def))
The value of rfont_def is nil when this failure happens.
#3 0x00241da4 in fontset_find_font (fontset=17297828, c=57374, face=0x1054820,
id=147, fallback=0) at .../src/fontset.c:551
551 = FONT_DEF_REPERTORY (RFONT_DEF_FONT_DEF (rfont_def));
(gdb) list
546 first. */
547 for (i = 0; i < ASIZE (vec); i++)
548 {
549 Lisp_Object rfont_def = AREF (vec, i);
550 Lisp_Object repertory
551 = FONT_DEF_REPERTORY (RFONT_DEF_FONT_DEF (rfont_def));
552
553 if (XINT (repertory) == id)
554 {
555 charset_matched = i;
(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] nil 0] nil]
(gdb) p i
$1 = 1
YAMAMOTO Mitsuharu
mituharu@math.s.chiba-u.ac.jp
In GNU Emacs 23.0.92.1 (powerpc-apple-darwin9.6.0, X toolkit)
of 2009-04-29 on yamamoto-mitsuharu-no-power-mac-g5.local
Windowing system distributor `The X.Org Foundation', version 11.0.10300000
configured using `configure '--without-jpeg' '--without-gif' '--without-tiff''
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: ja_JP.UTF-8
value of $XMODIFIERS: nil
locale-coding-system: utf-8-unix
default-enable-multibyte-characters: t
Major mode: Lisp Interaction
Minor modes in effect:
tooltip-mode: t
tool-bar-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
--- End Message ---
--- Begin Message ---
Subject: |
Re: 23.0.92; assertion failure in fontset_find_font |
Date: |
Thu, 30 Apr 2009 13:52:19 +0900 |
In article <877i12hm3e.fsf@cyd.mit.edu>, Chong Yidong <cyd@stupidchicken.com>
writes:
> > 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".
---
Kenichi Handa
handa@m17n.org
--- End Message ---