Hi there,

I was trying to Change some icons in the images dir and found a way to
crash emacs. It is 100% reproducible. Tested in GNU Emacs 23.0.0.6
(i686-pc-linux-gnu, GTK+ Version 2.8.20) of 2006-11-01.

Steps to reproduce:
    1.Backup:
      etc/images/gnus/toggle-subscription.xpm
      etc/images/mail/save.xpm
      etc/images/mail/save-draft.xpm
    2.Create empty files:
      etc/images/gnus/toggle-subscription.xpm
      etc/images/mail/save.xpm
      etc/images/mail/save-draft.xpm
    3. M-x gnus
    4. C-x 5 b *Group* RET
    5. Crash

Backtrace:
DISPLAY = :0.0
TERM = xterm
Breakpoint 1 at 0x8100af6: file emacs.c, line 464.
Breakpoint 2 at 0x81195c6: file sysdep.c, line 1385.
(gdb) r
Starting program: /home/b/emacs/src/emacs -geometry 80x40+0+0
Reading symbols from shared object read from target memory...done.
Loaded system supplied DSO at 0xc59000
[Thread debugging using libthread_db enabled]
[New Thread -1208981296 (LWP 9524)]
[Switching to Thread -1208981296 (LWP 9524)]
Breakpoint 3 at 0x80d5036: file xterm.c, line 8053.
Detaching after fork from child process 9527.
Detaching after fork from child process 9533.
Detaching after fork from child process 9534.
Detaching after fork from child process 9535.

Gtk-ERROR **: file gtktoolbar.c: line 2172 (logical_to_physical): assertion 
failed: (logical == 0)
aborting...

Breakpoint 1, abort () at emacs.c:464
464       kill (getpid (), SIGABRT);
(gdb) bt
#0  abort () at emacs.c:464
#1  0x4bb99c42 in g_logv () from /usr/lib/libglib-2.0.so.0
#2  0x4bb99c79 in g_log () from /usr/lib/libglib-2.0.so.0
#3  0x4bb99cf6 in g_assert_warning () from /usr/lib/libglib-2.0.so.0
#4  0x4e342d95 in gtk_toolbar_set_icon_size () from /usr/lib/libgtk-x11-2.0.so.0
#5  0x4e343984 in gtk_toolbar_insert () from /usr/lib/libgtk-x11-2.0.so.0
#6  0x080ff1af in update_frame_tool_bar (f=0x86bea00) at gtkutil.c:3732
#7  0x08086fa2 in redisplay_window (window=140951244, just_this_one_p=0) at 
xdisp.c:9980
#8  0x08089233 in redisplay_window_0 (window=140951244) at xdisp.c:11906
#9  0x08167688 in internal_condition_case_1 (bfun=0x8089210 
<redisplay_window_0>, arg=140951244, handlers=137561141,
    hfun=0x8066640 <redisplay_window_error>) at eval.c:1529
#10 0x08075996 in redisplay_windows (window=Variable "window" is not available.
) at xdisp.c:11885
#11 0x08089abe in redisplay_internal (preserve_echo_area=Variable 
"preserve_echo_area" is not available.
) at xdisp.c:11456
#12 0x0810d758 in read_char (commandflag=1, nmaps=4, maps=0xbfc86dd0, 
prev_event=137574601, used_mouse_menu=0xbfc86e78, end_time=0x0) at 
keyboard.c:3024
#13 0x0810f0d6 in read_key_sequence (keybuf=0xbfc86f24, bufsize=30, 
prompt=137574601, dont_downcase_last=0, can_return_switch_frame=1, 
fix_current_buffer=1)
    at keyboard.c:8958
#14 0x08110be3 in command_loop_1 () at keyboard.c:1603
#15 0x081678b2 in internal_condition_case (bfun=0x8110a50 <command_loop_1>, 
handlers=137613265, hfun=0x810b660 <cmd_error>) at eval.c:1481
#16 0x0810aa23 in command_loop_2 () at keyboard.c:1326
#17 0x0816796a in internal_catch (tag=137609473, func=0x810aa00 
<command_loop_2>, arg=137574601) at eval.c:1222
#18 0x0810b49c in command_loop () at keyboard.c:1305
#19 0x0810b83a in recursive_edit_1 () at keyboard.c:1003
#20 0x0810b927 in Frecursive_edit () at keyboard.c:1064
#21 0x081018f2 in main (argc=3, argv=0xbfc87624) at emacs.c:1814
(gdb) xba
(gdb) bt full
#0  abort () at emacs.c:464
No locals.
#1  0x4bb99c42 in g_logv () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#2  0x4bb99c79 in g_log () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#3  0x4bb99cf6 in g_assert_warning () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#4  0x4e342d95 in gtk_toolbar_set_icon_size () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#5  0x4e343984 in gtk_toolbar_insert () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#6  0x080ff1af in update_frame_tool_bar (f=0x86bea00) at gtkutil.c:3732
        w = (GtkWidget *) 0xa7608f0
        ti = (GtkToolItem *) 0xa7245e0
        i = 8
        old_req = {
  width = 2,
  height = 2
}
        new_req = {
  width = 134734637,
  height = 0
}
        icon_list = (GList *) 0x0
        iter = (GList *) 0x0
        x = (struct x_output *) 0x8663700
        hmargin = 0
        vmargin = Variable "vmargin" is not available.
-- 
Leo
_______________________________________________
emacs-pretest-bug mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug

Reply via email to