* bug#3809: 23.1.50; crash in abbrev mode
@ 2009-07-11 14:27 Chong Yidong
0 siblings, 0 replies; 2+ messages in thread
From: Chong Yidong @ 2009-07-11 14:27 UTC (permalink / raw)
To: Kenichi Handa; +Cc: 3809
> My Emacs (compiled with CFLAGS='-g -DENABLE_CHECKING') has
> just crashed as this:
>
> % emacs -Q
> C-x m
> M-x message-mode
> handa@
>
> Emacs crashes when I type the last "@" (in To: subject
> line). It seems that "handa" can be any other string. It
> is reproducible with EMACS_23_1_RC branch too.
I can't reproduce this, even with CFLAGS='-g -DENABLE_CHECKING'. But,
you're right about this:
> In the above code, at least we should have a ckeck of
> SYMBOLP (sym).
Could you go ahead and add this check, and if this fixes the crash for
you, please close the bug. Thanks.
^ permalink raw reply [flat|nested] 2+ messages in thread
* bug#3809: 23.1.50; crash in abbrev mode
@ 2009-07-10 12:22 Kenichi Handa
0 siblings, 0 replies; 2+ messages in thread
From: Kenichi Handa @ 2009-07-10 12:22 UTC (permalink / raw)
To: emacs-pretest-bug
My Emacs (compiled with CFLAGS='-g -DENABLE_CHECKING') has
just crashed as this:
cmds.c:495: Emacs fatal error: assertion failed: SYMBOLP(sym)
[Switching to Thread 0xb70e0700 (LWP 6775)]
Breakpoint 1, abort () at emacs.c:433
(gdb) bt full
#0 abort () at emacs.c:433
No locals.
#1 0x083202c2 in die (msg=0x85ae1ec "assertion failed: SYMBOLP(sym)", file=0x85acc8e "cmds.c", line=495) at alloc.c:6221
No locals.
#2 0x082ce57b in internal_self_insert (c=64, noautofill=0) at cmds.c:495
modiff = 135
sym = 164732765
hairy = 1
tem = -1080958120
synt = Spunct
overwrite = 142900505
string = 0
len = 1
str = "@\000\000\000"
chars_to_delete = 0
spaces_to_insert = 0
[...]
(gdb) up 2
(gdb) list
490 sym = call0 (Qexpand_abbrev);
491
492 /* If we expanded an abbrev which has a hook,
493 and the hook has a non-nil `no-self-insert' property,
494 return right away--don't really self-insert. */
495 if (! NILP (sym) && ! NILP (XSYMBOL (sym)->function)
496 && SYMBOLP (XSYMBOL (sym)->function))
497 {
498 Lisp_Object prop;
499 prop = Fget (XSYMBOL (sym)->function, intern ("no-self-insert"));
(gdb) pp sym
(64 46 37 33 95 45)
(gdb)
FYI, (string 64 46 37 33 95 45) => "@.%!_-".
This is reproducible by this scenario:
% emacs -Q
C-x m
M-x message-mode
handa@
Emacs crashes when I type the last "@" (in To: subject
line). It seems that "handa" can be any other string. It
is reproducible with EMACS_23_1_RC branch too.
In the above code, at least we should have a ckeck of
SYMBOLP (sym).
---
Kenichi Handa
handa@m17n.org
In GNU Emacs 23.1.50.2 (i686-pc-linux-gnu, GTK+ Version 2.14.4)
of 2009-07-08 on etlken
Windowing system distributor `The X.Org Foundation', version 11.0.10502000
configured using `configure 'CFLAGS=-g''
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: @im=SCIM
locale-coding-system: utf-8-unix
default-enable-multibyte-characters: t
Major mode: Lisp Interaction
Minor modes in effect:
display-time-mode: t
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
global-auto-composition-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
line-number-mode: t
Recent input:
<escape> x r e p o e r t <backspace> <backspace> <backspace>
r t <tab> <return>
Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2009-07-11 14:27 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-07-11 14:27 bug#3809: 23.1.50; crash in abbrev mode Chong Yidong
-- strict thread matches above, loose matches on Subject: below --
2009-07-10 12:22 Kenichi Handa
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.