Package: emacs;
Reported by: Stephen Berman <Stephen.Berman <at> rub.de>
Date: Tue, 5 Jul 2011 23:22:01 UTC
Severity: normal
Found in version 24.0.50
Done: Glenn Morris <rgm <at> gnu.org>
Bug is archived. No further changes may be made.
Message #41 received at 9006 <at> debbugs.gnu.org (full text, mbox):
From: Stephen Berman <stephen.berman <at> gmx.net> To: martin rudalics <rudalics <at> gmx.at> Cc: 9006 <at> debbugs.gnu.org Subject: Re: bug#9006: 24.0.50; Abort in unshow_buffer/kill-buffer Date: Sat, 09 Jul 2011 18:27:16 +0200
On Sat, 09 Jul 2011 15:01:03 +0200 martin rudalics <rudalics <at> gmx.at> wrote: >> Sure; but since I haven't found a way to induce the abort at will, >> failing to get a crash wouldn't be conclusive evidence that this fixes >> the problem. But I'll rebuild with it and report anything noteworthy. > > As I said earlier this fixes only one part of the problem. But it's the > part responsible for the crash, I presume. That appears to be the case, but... >> With `buffer' the build fails; did you mean `w->buffer'? (At least the >> build succeeds with that.) > > Arrgh, yes. Or current_buffer. ...with w->buffer the display is unstable, and calling `about-emacs' made Emacs abort in unshow_buffer again, but with a different backtrace (included below). I then replaced w->buffer with current_buffer and rebuilt, and that was even worse: Emacs aborted before the startup was complete; this time the backtrace was the same as in the earlier aborts. Then I tried with old_buffer, and so far, this is working: display is normal, about-emacs works, navigating and editing in Gnus works (so far); I'm even running a CPU-intensive program simultaneously as a stress test. No abort yet; I'll keep you posted. Steve Berman #0 abort () at /data/steve/bzr/emacs/quickfixes/src/emacs.c:379 No locals. #1 0x080a71a7 in unshow_buffer (w=0xba68200) at /data/steve/bzr/emacs/quickfixes/src/window.c:1801 buf = 139999749 b = 0x8583a00 #2 0x080ac9f4 in Fset_window_buffer (window=195461637, buffer_or_name= 195470965, keep_margins=138576074) at /data/steve/bzr/emacs/quickfixes/src/window.c:3129 tem = <value optimized out> buffer = 195470965 w = 0xba68200 #3 0x081ab181 in Ffuncall (nargs=3, args=0xbfffe2c0) at /data/steve/bzr/emacs/quickfixes/src/eval.c:3016 fun = <value optimized out> original_fun = <value optimized out> funcar = <value optimized out> numargs = 2 lisp_numargs = <value optimized out> val = <value optimized out> backtrace = { next = 0xbfffe3fc, function = 0xbfffe2c0, args = 0xbfffe2c4, nargs = 2, debug_on_exit = 0 } internal_args = 0xbfffe230 i = <value optimized out> #4 0x081e2be6 in exec_byte_code (bytestr=<value optimized out>, vector= 136802613, maxdepth=16, args_template=138576074, nargs=0, args=<value optimized out>) at /data/steve/bzr/emacs/quickfixes/src/bytecode.c:785 op = <value optimized out> vectorp = <value optimized out> stack = { pc = 0x83b8f30 "\210\n\204\063", ---Type <return> to continue, or q <return> to quit--- byte_string = 136802593, byte_string_start = 0x83b8f07 "\303\b!\211\031\304 =\204*", constants = 136802613, next = 0xbfffe4bc } top = 0xbfffe2c0 result = <value optimized out> #5 0x081aabb8 in funcall_lambda (fun=136802549, nargs=1, arg_vector=0xbfffe450) at /data/steve/bzr/emacs/quickfixes/src/eval.c:3240 val = <value optimized out> syms_left = 138576074 next = <value optimized out> lexenv = 138576074 count = <value optimized out> i = <value optimized out> optional = <value optimized out> rest = <value optimized out> #6 0x081aafb3 in Ffuncall (nargs=2, args=0xbfffe44c) at /data/steve/bzr/emacs/quickfixes/src/eval.c:3070 fun = <value optimized out> original_fun = 138777882 funcar = <value optimized out> numargs = 1 lisp_numargs = <value optimized out> val = <value optimized out> backtrace = { next = 0xbfffe59c, function = 0xbfffe44c, args = 0xbfffe450, nargs = 1, debug_on_exit = 0 } internal_args = <value optimized out> i = <value optimized out> #7 0x081e2be6 in exec_byte_code (bytestr=<value optimized out>, vector= 136913197, maxdepth=48, args_template=0, nargs=0, args=<value optimized out>) at /data/steve/bzr/emacs/quickfixes/src/bytecode.c:785 ---Type <return> to continue, or q <return> to quit--- op = <value optimized out> vectorp = <value optimized out> stack = { pc = 0x83a84c7 "\210\327\211\020\031\330 \210\n\203\063", byte_string = 136913177, byte_string_start = 0x83a84a3 "\306 \307 \310\311\312 \"r\313\314\315\316\317\320\006\a\006\a\"\321\"\322\323%DC\216\324\003!\210\325\326!\210\327\211\020\031\330 \210\n\203\063", constants = 136913197, next = 0xbfffe63c } top = 0xbfffe44c result = <value optimized out> #8 0x081aac11 in funcall_lambda (fun=136913149, nargs=0, arg_vector=0xbfffe5e4) at /data/steve/bzr/emacs/quickfixes/src/eval.c:3174 val = <value optimized out> syms_left = 0 next = <value optimized out> lexenv = <value optimized out> count = <value optimized out> i = <value optimized out> optional = <value optimized out> rest = <value optimized out> #9 0x081aafb3 in Ffuncall (nargs=1, args=0xbfffe5e0) at /data/steve/bzr/emacs/quickfixes/src/eval.c:3070 fun = <value optimized out> original_fun = 139160770 funcar = <value optimized out> numargs = 0 lisp_numargs = <value optimized out> val = <value optimized out> backtrace = { next = 0xbfffe71c, function = 0xbfffe5e0, args = 0xbfffe5e4, nargs = 0, ---Type <return> to continue, or q <return> to quit--- debug_on_exit = 0 } internal_args = <value optimized out> i = <value optimized out> #10 0x081e2be6 in exec_byte_code (bytestr=<value optimized out>, vector= 136917461, maxdepth=8, args_template=0, nargs=0, args=<value optimized out>) at /data/steve/bzr/emacs/quickfixes/src/bytecode.c:785 op = <value optimized out> vectorp = <value optimized out> stack = { pc = 0x83a7636 "\207\302\303!\207", byte_string = 136917441, byte_string_start = 0x83a762f "\300 \203\b", constants = 136917461, next = 0x0 } top = 0xbfffe5e0 result = <value optimized out> #11 0x081aac11 in funcall_lambda (fun=136917413, nargs=0, arg_vector=0xbfffe784) at /data/steve/bzr/emacs/quickfixes/src/eval.c:3174 val = <value optimized out> syms_left = 0 next = <value optimized out> lexenv = <value optimized out> count = <value optimized out> i = <value optimized out> optional = <value optimized out> rest = <value optimized out> #12 0x081aafb3 in Ffuncall (nargs=1, args=0xbfffe780) at /data/steve/bzr/emacs/quickfixes/src/eval.c:3070 fun = <value optimized out> original_fun = 139161034 funcar = <value optimized out> numargs = 0 lisp_numargs = <value optimized out> val = <value optimized out> backtrace = { ---Type <return> to continue, or q <return> to quit--- next = 0xbfffe8ec, function = 0xbfffe780, args = 0xbfffe784, nargs = 0, debug_on_exit = 0 } internal_args = <value optimized out> i = <value optimized out> #13 0x081ab593 in apply1 (fn=139161034, arg=138576074) at /data/steve/bzr/emacs/quickfixes/src/eval.c:2745 ret_ungc_val = 195605896 #14 0x081a702d in Fcall_interactively (function=139161034, record_flag= 138576074, keys=138604237) at /data/steve/bzr/emacs/quickfixes/src/callint.c:379 input = <value optimized out> funval = <value optimized out> events = <value optimized out> args = <value optimized out> visargs = <value optimized out> specs = 138576074 filter_specs = <value optimized out> teml = <value optimized out> up_event = 138576074 enable = 138576074 speccount = <value optimized out> next_event = <value optimized out> prefix_arg = 138576074 string = 0x0 tem = <value optimized out> varies = <value optimized out> i = <value optimized out> nargs = <value optimized out> foo = <value optimized out> prompt1 = "\000\000\000\000\000 ", '\000' <repeats 93 times> tem1 = <value optimized out> arg_from_tty = 0 key_count = 2 ---Type <return> to continue, or q <return> to quit--- record_then_fail = 0 save_this_command = 139161034 save_last_command = 138968194 save_this_original_command = 139161034 save_real_this_command = 139161034 #15 0x081ab181 in Ffuncall (nargs=4, args=0xbfffe930) at /data/steve/bzr/emacs/quickfixes/src/eval.c:3016 fun = <value optimized out> original_fun = <value optimized out> funcar = <value optimized out> numargs = 3 lisp_numargs = <value optimized out> val = <value optimized out> backtrace = { next = 0x0, function = 0xbfffe930, args = 0xbfffe934, nargs = 3, debug_on_exit = 0 } internal_args = 0xbfffe934 i = <value optimized out> #16 0x081ab431 in call3 (fn=138698938, arg1=139161034, arg2=138576074, arg3= 138576074) at /data/steve/bzr/emacs/quickfixes/src/eval.c:2809 ret_ungc_val = 195605896 args = {138698938, 139161034, 138576074, 138576074} #17 0x0813c00f in Fcommand_execute (cmd=139161034, record_flag=138576074, keys= 138576074, special=138576074) at /data/steve/bzr/emacs/quickfixes/src/keyboard.c:10274 final = <value optimized out> tem = <value optimized out> prefixarg = 138576074 #18 0x08149980 in command_loop_1 () at /data/steve/bzr/emacs/quickfixes/src/keyboard.c:1572 scount = 2 cmd = <value optimized out> keybuf = {32, 4, 176324046, 138576098, -1073747426, 139533058, ---Type <return> to continue, or q <return> to quit--- 138689802, 138576074, -1073747416, -1073747426, 138576074, 138576074, -1073747352, 135527446, 176324046, -1073747426, 138576074, 138689800, 0, 0, -1232775064, 2, 139002824, 139002840, -1073747384, 135973561, 2, 138828926, 23, 0} i = <value optimized out> prev_modiff = 1210 prev_buffer = 0x8583a00 #19 0x081a9571 in internal_condition_case (bfun=0x8149660 <command_loop_1>, handlers=138607114, hfun=0x813fb60 <cmd_error>) at /data/steve/bzr/emacs/quickfixes/src/eval.c:1493 val = <value optimized out> c = { tag = 138576074, val = 138576074, next = 0xbfffeba8, gcpro = 0x0, jmp = {{ __jmpbuf = {0, 139002824, 139002840, -1073747096, -1254590365, 2143746828}, __mask_was_saved = 0, __saved_mask = { __val = {1, 3087005952, 7, 142299368, 45, 142299368, 3086910040, 3065788385, 134551036, 7, 0, 3221220192, 3221220136, 0, 3087005952, 134550029, 3067970904, 3067183092, 3066786931, 7, 3221220432, 3221220128, 3221220432, 135614420, 2, 3221220292, 3221220128, 3065744920, 3067970904, 0, 4294967295, 3087003636} } }}, backlist = 0x0, handlerlist = 0x0, lisp_eval_depth = 0, pdlcount = 2, poll_suppress_count = 1, interrupt_input_blocked = 0, byte_stack = 0x0 } h = { ---Type <return> to continue, or q <return> to quit--- handler = 138607114, var = 138576074, chosen_clause = 138576098, tag = 0xbfffea84, next = 0x0 } #20 0x0813eae5 in command_loop_2 (ignore=138576074) at /data/steve/bzr/emacs/quickfixes/src/keyboard.c:1156 val = 195605896 #21 0x081a94a1 in internal_catch (tag=138605090, func= 0x813eac0 <command_loop_2>, arg=138576074) at /data/steve/bzr/emacs/quickfixes/src/eval.c:1247 c = { tag = 138605090, val = 138576074, next = 0x0, gcpro = 0x0, jmp = {{ __jmpbuf = {0, 139002824, 139002840, -1073746824, -1254377373, 2143576844}, __mask_was_saved = 0, __saved_mask = { __val = {0, 0, 0, 0, 0, 0, 0, 0, 3066169116, 0, 0, 0, 3066169116, 0, 0, 0, 64, 3221220408, 135893307, 138253360, 64, 14, 138741954, 138741952, 138576074, 3221220472, 135973174, 138741954, 138576074, 138576074, 1, 3221220520} } }}, backlist = 0x0, handlerlist = 0x0, lisp_eval_depth = 0, pdlcount = 2, poll_suppress_count = 1, interrupt_input_blocked = 0, byte_stack = 0x0 } #22 0x0813f686 in command_loop () ---Type <return> to continue, or q <return> to quit--- at /data/steve/bzr/emacs/quickfixes/src/keyboard.c:1135 No locals. #23 recursive_edit_1 () at /data/steve/bzr/emacs/quickfixes/src/keyboard.c:756 count = 1 val = 0 #24 0x0813f982 in Frecursive_edit () at /data/steve/bzr/emacs/quickfixes/src/keyboard.c:820 count = <value optimized out> buffer = 138576074 #25 0x0813aa1c in main (argc=2, argv=0xbffff084) at /data/steve/bzr/emacs/quickfixes/src/emacs.c:1702 dummy = 1 stack_bottom_variable = 8 '\b' do_initial_setlocale = <value optimized out> skip_args = 0 rlim = { rlim_cur = 8388608, rlim_max = 18446744073709551615 } no_loadup = 0 junk = 0x0 dname_arg = 0x0 ch_to_dir = 0x0 Lisp Backtrace: "set-window-buffer" (0xbfffe2c4) "switch-to-buffer" (0xbfffe450) "fancy-about-screen" (0xbfffe5e4) "about-emacs" (0xbfffe784) "call-interactively" (0xbfffe934)
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.