* bug#15575: 24.3.50; New tty menus crash Emacs
@ 2013-10-09 17:05 Jan Djärv
2013-10-09 17:41 ` Eli Zaretskii
0 siblings, 1 reply; 44+ messages in thread
From: Jan Djärv @ 2013-10-09 17:05 UTC (permalink / raw)
To: 15575
Hello.
Starting emacs with -Q -nw and then press F10 gives a crash:
Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_INVALID_ADDRESS at address: 0x000000000002fe21
0x00007fff8a1cb20d in memmove$VARIANT$sse3x ()
#0 0x00007fff8a1cb207 in memmove$VARIANT$sse3x ()
#1 0x00000001000484bc in deep_copy_glyph_row (to=0x10383ae00, from=0x10383c600) at /Users/jhd/src/emacs/current/src/xdisp.c:20619
#2 0x0000000100047e39 in display_tty_menu_item (item_text=0x1006124b1 "New Frame on Display...", width=40, face_id=15, x=0, y=24, submenu=0) at /Users/jhd/src/emacs/current/src/xdisp.c:20661
#3 0x0000000100118958 in tty_menu_display (menu=0x100e09030, x=0, y=1, pn=1, faces=0x7fff5fbfcfe0, mx=0, my=1, disp_help=1) at /Users/jhd/src/emacs/current/src/term.c:2948
#4 0x0000000100111eff in tty_menu_activate (menu=0x100e08e30, pane=0x7fff5fbfd474, selidx=0x7fff5fbfd470, x0=1, y0=1, txt=0x7fff5fbfd450, help_callback=0x100112090 <tty_menu_help_callback>, kbd_navigation=1) at /Users/jhd/src/emacs/current/src/term.c:3404
#5 0x00000001001108eb in tty_menu_show (f=0x10181c268, x=1, y=0, for_click=1, keymaps=1, title=4299165865, kbd_navigation=1, error_name=0x7fff5fbfd690) at /Users/jhd/src/emacs/current/src/term.c:3781
#6 0x00000001000948f7 in Fx_popup_menu (position=4347610518, menu=4346524678) at /Users/jhd/src/emacs/current/src/menu.c:1454
#7 0x0000000100205b55 in Ffuncall (nargs=3, args=0x7fff5fbfd798) at /Users/jhd/src/emacs/current/src/eval.c:2792
#8 0x0000000100267580 in exec_byte_code (bytestr=4300144865, vector=4300144901, maxdepth=24, args_template=4320145466, nargs=0, args=0x0) at /Users/jhd/src/emacs/current/src/bytecode.c:919
#9 0x000000010020744a in funcall_lambda (fun=4300144741, nargs=4, arg_vector=0x7fff5fbfdee0) at /Users/jhd/src/emacs/current/src/eval.c:3025
#10 0x0000000100205d56 in Ffuncall (nargs=5, args=0x7fff5fbfded8) at /Users/jhd/src/emacs/current/src/eval.c:2838
#11 0x0000000100267580 in exec_byte_code (bytestr=4300146009, vector=4300146045, maxdepth=32, args_template=4320145466, nargs=0, args=0x0) at /Users/jhd/src/emacs/current/src/bytecode.c:919
#12 0x000000010020744a in funcall_lambda (fun=4300145957, nargs=0, arg_vector=0x7fff5fbfe670) at /Users/jhd/src/emacs/current/src/eval.c:3025
#13 0x0000000100205d56 in Ffuncall (nargs=1, args=0x7fff5fbfe668) at /Users/jhd/src/emacs/current/src/eval.c:2838
#14 0x00000001001fe35a in apply1 (fn=4323262346, arg=4320145466) at /Users/jhd/src/emacs/current/src/eval.c:2555
#15 0x00000001001fab56 in Fcall_interactively (function=4323262346, record_flag=4320145466, keys=4320182853) at /Users/jhd/src/emacs/current/src/callint.c:378
#16 0x0000000100205b84 in Ffuncall (nargs=4, args=0x7fff5fbfead8) at /Users/jhd/src/emacs/current/src/eval.c:2796
#17 0x0000000100267580 in exec_byte_code (bytestr=4299590377, vector=4299590413, maxdepth=52, args_template=4100, nargs=1, args=0x7fff5fbff230) at /Users/jhd/src/emacs/current/src/bytecode.c:919
#18 0x0000000100206f4d in funcall_lambda (fun=4299590333, nargs=1, arg_vector=0x7fff5fbff228) at /Users/jhd/src/emacs/current/src/eval.c:2959
#19 0x0000000100205d56 in Ffuncall (nargs=2, args=0x7fff5fbff220) at /Users/jhd/src/emacs/current/src/eval.c:2838
#20 0x00000001002067d9 in call1 (fn=4320213578, arg1=4323262346) at /Users/jhd/src/emacs/current/src/eval.c:2588
#21 0x0000000100136a49 in command_loop_1 () at /Users/jhd/src/emacs/current/src/keyboard.c:1561
#22 0x0000000100203359 in internal_condition_case (bfun=0x100135e60 <command_loop_1>, handlers=4320220922, hfun=0x1001539d0 <cmd_error>) at /Users/jhd/src/emacs/current/src/eval.c:1331
#23 0x00000001001538c9 in command_loop_2 (ignore=4320145466) at /Users/jhd/src/emacs/current/src/keyboard.c:1162
#24 0x00000001002025e1 in internal_catch (tag=4320217114, func=0x1001538a0 <command_loop_2>, arg=4320145466) at /Users/jhd/src/emacs/current/src/eval.c:1097
#25 0x000000010013533b in command_loop () at /Users/jhd/src/emacs/current/src/keyboard.c:1141
#26 0x0000000100135204 in recursive_edit_1 () at /Users/jhd/src/emacs/current/src/keyboard.c:780
#27 0x0000000100135522 in Frecursive_edit () at /Users/jhd/src/emacs/current/src/keyboard.c:844
#28 0x0000000100133584 in main (argc=3, argv=0x7fff5fbff8c0) at /Users/jhd/src/emacs/current/src/emacs.c:1577
Lisp Backtrace:
No symbol "ARRAY_MARK_FLAG" in current context.
Same problem as my report about VALMASK, this is optimized away.
Jan D.
In GNU Emacs 24.3.50.5 (x86_64-apple-darwin12.5.0, NS apple-appkit-1187.40)
of 2013-10-09 on zeplin
Bzr revision: 114590 eliz@gnu.org-20131009145313-a2ht28fv2r8hozxy
Windowing system distributor `Apple', version 10.3.1187
Configured using:
`configure --verbose --with-ns CFLAGS=-g3'
Important settings:
value of $LC_COLLATE: C
value of $LANG: sv_SE.UTF-8
locale-coding-system: utf-8-unix
default enable-multibyte-characters: t
Major mode: Lisp Interaction
Minor modes in effect:
tooltip-mode: t
mouse-wheel-mode: t
tool-bar-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
blink-cursor-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
line-number-mode: t
transient-mark-mode: t
Recent input:
<escape> x r e p o r t - e m a c s - b u g <return
>
Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.
Load-path shadows:
None found.
Features:
(shadow sort gnus-util mail-extr emacsbug message format-spec rfc822 mml
easymenu mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231
mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums
mm-util mail-prsvr mail-utils time-date tooltip ediff-hook vc-hooks
lisp-float-type mwheel ns-win tool-bar dnd fontset image regexp-opt
fringe tabulated-list newcomment lisp-mode prog-mode register page
menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock
syntax facemenu font-core frame cham georgian utf-8-lang misc-lang
vietnamese tibetan thai tai-viet lao korean japanese hebrew greek
romanian slovak czech european ethiopic indian cyrillic chinese
case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer nadvice
loaddefs button faces cus-face macroexp files text-properties overlay
sha1 md5 base64 format env code-pages mule custom widget
hashtable-print-readable backquote make-network-process ns multi-tty
emacs)
^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-09 17:05 bug#15575: 24.3.50; New tty menus crash Emacs Jan Djärv @ 2013-10-09 17:41 ` Eli Zaretskii 2013-10-09 17:58 ` Jan Djärv 0 siblings, 1 reply; 44+ messages in thread From: Eli Zaretskii @ 2013-10-09 17:41 UTC (permalink / raw) To: Jan Djärv; +Cc: 15575 > From: Jan Djärv <jan.h.d@swipnet.se> > Date: Wed, 9 Oct 2013 19:05:30 +0200 > > Hello. > > Starting emacs with -Q -nw and then press F10 gives a crash: > > Program received signal EXC_BAD_ACCESS, Could not access memory. > Reason: KERN_INVALID_ADDRESS at address: 0x000000000002fe21 > 0x00007fff8a1cb20d in memmove$VARIANT$sse3x () > #0 0x00007fff8a1cb207 in memmove$VARIANT$sse3x () > #1 0x00000001000484bc in deep_copy_glyph_row (to=0x10383ae00, from=0x10383c600) at /Users/jhd/src/emacs/current/src/xdisp.c:20619 Can you tell the values of the following, after stopping at line 20617 of xdisp.c: from->used[0] from->used[1] from->used[2] from->glyphs[0] from->glyphs[1] from->glyphs[2] to->used[0] to->used[1] to->used[2] to->glyphs[0] to->glyphs[1] to->glyphs[2] sizeof(struct glyph) sum_used i Thanks. ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-09 17:41 ` Eli Zaretskii @ 2013-10-09 17:58 ` Jan Djärv 2013-10-09 18:17 ` Jan Djärv 2013-10-09 19:00 ` Eli Zaretskii 0 siblings, 2 replies; 44+ messages in thread From: Jan Djärv @ 2013-10-09 17:58 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 15575 Hello. 9 okt 2013 kl. 19:41 skrev Eli Zaretskii <eliz@gnu.org>: >> From: Jan Djärv <jan.h.d@swipnet.se> >> Date: Wed, 9 Oct 2013 19:05:30 +0200 >> >> Hello. >> >> Starting emacs with -Q -nw and then press F10 gives a crash: >> >> Program received signal EXC_BAD_ACCESS, Could not access memory. >> Reason: KERN_INVALID_ADDRESS at address: 0x000000000002fe21 >> 0x00007fff8a1cb20d in memmove$VARIANT$sse3x () >> #0 0x00007fff8a1cb207 in memmove$VARIANT$sse3x () >> #1 0x00000001000484bc in deep_copy_glyph_row (to=0x10383ae00, from=0x10383c600) at /Users/jhd/src/emacs/current/src/xdisp.c:20619 > > Can you tell the values of the following, after stopping at line > 20617 of xdisp.c: > > from->used[0] > from->used[1] > from->used[2] > from->glyphs[0] > from->glyphs[1] > from->glyphs[2] > to->used[0] > to->used[1] > to->used[2] > to->glyphs[0] > to->glyphs[1] > to->glyphs[2] > sizeof(struct glyph) > sum_used > i > (gdb) p from->used[0] $1 = 30065 (gdb) p from->used[1] $2 = 26977 (gbd) p from->used[2] $3 = 12140 $4 = (struct glyph *) 0x10403bc00 (gdb) p from->glyphs[1] $5 = (struct glyph *) 0x10403bbe8 (gdb) p from->glyphs[2] $6 = (struct glyph *) 0x102a1f548 (gdb) p to->used[0] $7 = 4 (gdb) p to->used[1] $8 = 0 (gdb) p to->used[2] $9 = 0 (gdb) p to->glyphs[0] $10 = (struct glyph *) 0x4 (gdb) p to->glyphs[1] $11 = (struct glyph *) 0x4 (gdb) p to->glyphs[2] $12 = (struct glyph *) 0x4 (gdb) p sizeof(struct glyph) $13 = 48 (gdb) p sum_used $14 = 86334 (gdb) p i $15 = 3969 These values vary if run again. Here is another run: $1 = 12346 $2 = 384 $3 = 1 $4 = (struct glyph *) 0x3000000000000088 $5 = (struct glyph *) 0x100f11e21 $6 = (struct glyph *) 0x10180300a $7 = 12346 $8 = 384 $9 = 1 $10 = (struct glyph *) 0x104033e00 $11 = (struct glyph *) 0x1040c48e0 $12 = (struct glyph *) 0x1040c90e0 $13 = 48 $14 = 12731 $15 = 0 Jan D. ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-09 17:58 ` Jan Djärv @ 2013-10-09 18:17 ` Jan Djärv 2013-10-09 18:20 ` Jan Djärv 2013-10-09 19:00 ` Eli Zaretskii 1 sibling, 1 reply; 44+ messages in thread From: Jan Djärv @ 2013-10-09 18:17 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 15575 Hello. FWIW, I get the same crash on Fedora 19. Jan D. 9 okt 2013 kl. 19:58 skrev Jan Djärv <jan.h.d@swipnet.se>: > Hello. > > 9 okt 2013 kl. 19:41 skrev Eli Zaretskii <eliz@gnu.org>: > >>> From: Jan Djärv <jan.h.d@swipnet.se> >>> Date: Wed, 9 Oct 2013 19:05:30 +0200 >>> >>> Hello. >>> >>> Starting emacs with -Q -nw and then press F10 gives a crash: >>> >>> Program received signal EXC_BAD_ACCESS, Could not access memory. >>> Reason: KERN_INVALID_ADDRESS at address: 0x000000000002fe21 >>> 0x00007fff8a1cb20d in memmove$VARIANT$sse3x () >>> #0 0x00007fff8a1cb207 in memmove$VARIANT$sse3x () >>> #1 0x00000001000484bc in deep_copy_glyph_row (to=0x10383ae00, from=0x10383c600) at /Users/jhd/src/emacs/current/src/xdisp.c:20619 >> >> Can you tell the values of the following, after stopping at line >> 20617 of xdisp.c: >> >> from->used[0] >> from->used[1] >> from->used[2] >> from->glyphs[0] >> from->glyphs[1] >> from->glyphs[2] >> to->used[0] >> to->used[1] >> to->used[2] >> to->glyphs[0] >> to->glyphs[1] >> to->glyphs[2] >> sizeof(struct glyph) >> sum_used >> i >> > > (gdb) p from->used[0] > $1 = 30065 > (gdb) p from->used[1] > $2 = 26977 > (gbd) p from->used[2] > $3 = 12140 > $4 = (struct glyph *) 0x10403bc00 > (gdb) p from->glyphs[1] > $5 = (struct glyph *) 0x10403bbe8 > (gdb) p from->glyphs[2] > $6 = (struct glyph *) 0x102a1f548 > (gdb) p to->used[0] > $7 = 4 > (gdb) p to->used[1] > $8 = 0 > (gdb) p to->used[2] > $9 = 0 > (gdb) p to->glyphs[0] > $10 = (struct glyph *) 0x4 > (gdb) p to->glyphs[1] > $11 = (struct glyph *) 0x4 > (gdb) p to->glyphs[2] > $12 = (struct glyph *) 0x4 > (gdb) p sizeof(struct glyph) > $13 = 48 > (gdb) p sum_used > $14 = 86334 > (gdb) p i > $15 = 3969 > > These values vary if run again. Here is another run: > > $1 = 12346 > $2 = 384 > $3 = 1 > $4 = (struct glyph *) 0x3000000000000088 > $5 = (struct glyph *) 0x100f11e21 > $6 = (struct glyph *) 0x10180300a > $7 = 12346 > $8 = 384 > $9 = 1 > $10 = (struct glyph *) 0x104033e00 > $11 = (struct glyph *) 0x1040c48e0 > $12 = (struct glyph *) 0x1040c90e0 > $13 = 48 > $14 = 12731 > $15 = 0 > > > Jan D. > > > ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-09 18:17 ` Jan Djärv @ 2013-10-09 18:20 ` Jan Djärv 0 siblings, 0 replies; 44+ messages in thread From: Jan Djärv @ 2013-10-09 18:20 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 15575 Hello. Values from Fedora 19: $1 = 5056 $2 = 268 $3 = 0 $4 = (struct glyph *) 0x0 $5 = (struct glyph *) 0x2011 $6 = (struct glyph *) 0x14f4330 $7 = 5056 $8 = 268 $9 = 0 $10 = (struct glyph *) 0x0 $11 = (struct glyph *) 0x3b400 $12 = (struct glyph *) 0x3e640 $13 = 48 $14 = 5324 $15 = 0 Jan D. 9 okt 2013 kl. 20:17 skrev Jan Djärv <jan.h.d@swipnet.se>: > Hello. > > FWIW, I get the same crash on Fedora 19. > > Jan D. > > 9 okt 2013 kl. 19:58 skrev Jan Djärv <jan.h.d@swipnet.se>: > >> Hello. >> >> 9 okt 2013 kl. 19:41 skrev Eli Zaretskii <eliz@gnu.org>: >> >>>> From: Jan Djärv <jan.h.d@swipnet.se> >>>> Date: Wed, 9 Oct 2013 19:05:30 +0200 >>>> >>>> Hello. >>>> >>>> Starting emacs with -Q -nw and then press F10 gives a crash: >>>> >>>> Program received signal EXC_BAD_ACCESS, Could not access memory. >>>> Reason: KERN_INVALID_ADDRESS at address: 0x000000000002fe21 >>>> 0x00007fff8a1cb20d in memmove$VARIANT$sse3x () >>>> #0 0x00007fff8a1cb207 in memmove$VARIANT$sse3x () >>>> #1 0x00000001000484bc in deep_copy_glyph_row (to=0x10383ae00, from=0x10383c600) at /Users/jhd/src/emacs/current/src/xdisp.c:20619 >>> >>> Can you tell the values of the following, after stopping at line >>> 20617 of xdisp.c: >>> >>> from->used[0] >>> from->used[1] >>> from->used[2] >>> from->glyphs[0] >>> from->glyphs[1] >>> from->glyphs[2] >>> to->used[0] >>> to->used[1] >>> to->used[2] >>> to->glyphs[0] >>> to->glyphs[1] >>> to->glyphs[2] >>> sizeof(struct glyph) >>> sum_used >>> i >>> >> >> (gdb) p from->used[0] >> $1 = 30065 >> (gdb) p from->used[1] >> $2 = 26977 >> (gbd) p from->used[2] >> $3 = 12140 >> $4 = (struct glyph *) 0x10403bc00 >> (gdb) p from->glyphs[1] >> $5 = (struct glyph *) 0x10403bbe8 >> (gdb) p from->glyphs[2] >> $6 = (struct glyph *) 0x102a1f548 >> (gdb) p to->used[0] >> $7 = 4 >> (gdb) p to->used[1] >> $8 = 0 >> (gdb) p to->used[2] >> $9 = 0 >> (gdb) p to->glyphs[0] >> $10 = (struct glyph *) 0x4 >> (gdb) p to->glyphs[1] >> $11 = (struct glyph *) 0x4 >> (gdb) p to->glyphs[2] >> $12 = (struct glyph *) 0x4 >> (gdb) p sizeof(struct glyph) >> $13 = 48 >> (gdb) p sum_used >> $14 = 86334 >> (gdb) p i >> $15 = 3969 >> >> These values vary if run again. Here is another run: >> >> $1 = 12346 >> $2 = 384 >> $3 = 1 >> $4 = (struct glyph *) 0x3000000000000088 >> $5 = (struct glyph *) 0x100f11e21 >> $6 = (struct glyph *) 0x10180300a >> $7 = 12346 >> $8 = 384 >> $9 = 1 >> $10 = (struct glyph *) 0x104033e00 >> $11 = (struct glyph *) 0x1040c48e0 >> $12 = (struct glyph *) 0x1040c90e0 >> $13 = 48 >> $14 = 12731 >> $15 = 0 >> >> >> Jan D. >> >> >> > ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-09 17:58 ` Jan Djärv 2013-10-09 18:17 ` Jan Djärv @ 2013-10-09 19:00 ` Eli Zaretskii [not found] ` <97F9A2CA-8E08-4867-93C3-5BAE8DF80D72@swipnet.se> 1 sibling, 1 reply; 44+ messages in thread From: Eli Zaretskii @ 2013-10-09 19:00 UTC (permalink / raw) To: Jan Djärv; +Cc: 15575 > From: Jan Djärv <jan.h.d@swipnet.se> > Date: Wed, 9 Oct 2013 19:58:57 +0200 > Cc: 15575@debbugs.gnu.org > > (gdb) p from->used[0] > $1 = 30065 > (gdb) p from->used[1] > $2 = 26977 > (gbd) p from->used[2] > $3 = 12140 I don't see how this could be true, I guess the compiler fools the debugger here. > (gdb) p to->used[0] > $7 = 4 > (gdb) p to->used[1] > $8 = 0 > (gdb) p to->used[2] > $9 = 0 Likewise, this doesn't seem to be possible on a TTY. Sigh... > (gdb) p to->glyphs[0] > $10 = (struct glyph *) 0x4 > (gdb) p to->glyphs[1] > $11 = (struct glyph *) 0x4 > (gdb) p to->glyphs[2] > $12 = (struct glyph *) 0x4 Neither can this be true, I think. Or maybe I'm missing something. > (gdb) p sizeof(struct glyph) > $13 = 48 This one is the only one that makes sense, but it's not a variable, so I'm not surprised. > These values vary if run again. Here is another run: > > $1 = 12346 > $2 = 384 > $3 = 1 > $4 = (struct glyph *) 0x3000000000000088 > $5 = (struct glyph *) 0x100f11e21 > $6 = (struct glyph *) 0x10180300a > $7 = 12346 > $8 = 384 > $9 = 1 > $10 = (struct glyph *) 0x104033e00 > $11 = (struct glyph *) 0x1040c48e0 > $12 = (struct glyph *) 0x1040c90e0 > $13 = 48 > $14 = 12731 > $15 = 0 Can you try the patch below? === modified file 'src/xdisp.c' --- src/xdisp.c 2013-10-08 17:49:20 +0000 +++ src/xdisp.c 2013-10-09 18:44:38 +0000 @@ -20589,11 +20589,14 @@ display_menu_bar (struct window *w) static void deep_copy_glyph_row (struct glyph_row *to, struct glyph_row *from) { - int area, i, sum_used = 0; + int area, i; struct glyph *pointers[1 + LAST_AREA]; /* Save glyph pointers of TO. */ memcpy (pointers, to->glyphs, sizeof to->glyphs); + eassert (to->used[0] == from->used[0]); + eassert (to->used[1] == from->used[1]); + eassert (to->used[2] == from->used[2]); /* Do a structure assignment. */ *to = *from; @@ -20601,22 +20604,10 @@ deep_copy_glyph_row (struct glyph_row *t /* Restore original pointers of TO. */ memcpy (to->glyphs, pointers, sizeof to->glyphs); - /* Count how many glyphs to copy and update glyph pointers. */ + /* Count how many glyphs to copy and copy the glyphs. */ for (area = LEFT_MARGIN_AREA; area < LAST_AREA; ++area) - { - if (area > LEFT_MARGIN_AREA) - { - eassert (from->glyphs[area] - from->glyphs[area - 1] - == from->used[area - 1]); - to->glyphs[area] = to->glyphs[area - 1] + to->used[area - 1]; - } - sum_used += from->used[area]; - } - - /* Copy the glyphs. */ - eassert (sum_used <= to->glyphs[LAST_AREA] - to->glyphs[LEFT_MARGIN_AREA]); - for (i = 0; i < sum_used; i++) - to->glyphs[LEFT_MARGIN_AREA][i] = from->glyphs[LEFT_MARGIN_AREA][i]; + for (i = 0; i < from->used[area]; i++) + to->glyphs[area][i] = from->glyphs[area][i]; } /* Display one menu item on a TTY, by overwriting the glyphs in the ^ permalink raw reply [flat|nested] 44+ messages in thread
[parent not found: <97F9A2CA-8E08-4867-93C3-5BAE8DF80D72@swipnet.se>]
* bug#15575: 24.3.50; New tty menus crash Emacs [not found] ` <97F9A2CA-8E08-4867-93C3-5BAE8DF80D72@swipnet.se> @ 2013-10-10 16:15 ` Eli Zaretskii 2013-10-10 17:35 ` Jan Djärv 0 siblings, 1 reply; 44+ messages in thread From: Eli Zaretskii @ 2013-10-10 16:15 UTC (permalink / raw) To: Jan Djärv; +Cc: 15575 > From: Jan Djärv <jan.h.d@swipnet.se> > Date: Thu, 10 Oct 2013 10:06:51 +0200 > > 9 okt 2013 kl. 21:00 skrev Eli Zaretskii <eliz@gnu.org>: > > > > Can you try the patch below? > > Makes no difference on OSX or Fedora 19, still crashes in the same place. How do you mean "the same place"? That place should no longer exist after applying the patch. If you mean the line marked below: /* Count how many glyphs to copy and copy the glyphs. */ for (area = LEFT_MARGIN_AREA; area < LAST_AREA; ++area) for (i = 0; i < from->used[area]; i++) to->glyphs[area][i] = from->glyphs[area][i]; <<<<<<<<<<<<<< then please tell what is the value of 'area' and of 'i' at the point of the crash. Btw, did you compile with --enable-checking, i.e. were the 3 eassert statements at the beginning of deep_copy_glyph_row compiled into the program? ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-10 16:15 ` Eli Zaretskii @ 2013-10-10 17:35 ` Jan Djärv 2013-10-10 19:36 ` Eli Zaretskii 2013-10-10 20:56 ` Stefan Monnier 0 siblings, 2 replies; 44+ messages in thread From: Jan Djärv @ 2013-10-10 17:35 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 15575 [-- Attachment #1: Type: text/plain, Size: 1995 bytes --] Hello. 10 okt 2013 kl. 18:15 skrev Eli Zaretskii <eliz@gnu.org>: >> From: Jan Djärv <jan.h.d@swipnet.se> >> Date: Thu, 10 Oct 2013 10:06:51 +0200 >> >> 9 okt 2013 kl. 21:00 skrev Eli Zaretskii <eliz@gnu.org>: >>> >>> Can you try the patch below? >> >> Makes no difference on OSX or Fedora 19, still crashes in the same place. > > How do you mean "the same place"? That place should no longer exist > after applying the patch. > > If you mean the line marked below: > > /* Count how many glyphs to copy and copy the glyphs. */ > for (area = LEFT_MARGIN_AREA; area < LAST_AREA; ++area) > for (i = 0; i < from->used[area]; i++) > to->glyphs[area][i] = from->glyphs[area][i]; <<<<<<<<<<<<<< > It is the same place in the code, but not the same line in the file. > then please tell what is the value of 'area' and of 'i' at the point > of the crash. > On Fedora 19: (gdb) p area $1 = 1 (gdb) p i $2 = 0 (gdb) > Btw, did you compile with --enable-checking, i.e. were the 3 eassert > statements at the beginning of deep_copy_glyph_row compiled into the > program? No, I did not. I usually don't because the checkings more often than not trip on something that really isn't a bug. I've never caught a real error with it. This one triggers: #3 0x0000000000449d2b in deep_copy_glyph_row (from=<optimized out>, to=0xce9e40) at /home/jhd/src/emacs/current/src/xdisp.c:20597 20597 eassert (to->used[0] == from->used[0]); (gdb) p to->used[0] $1 = -15072 There is some memory corruption. If I press F11 twice and then F10, the crash does not happen. The menu appears but there are major redrawing problems, for example, going down in the menu does not work, it just scrolls the buffer instead until the menu disappears over the top, the buffer is not redrawn correctly when the menu goes away, nor is the menu bar. I did not test it much. Could be another symptom of the memory corruption. Jan D. [-- Attachment #2.1: Type: text/html, Size: 3484 bytes --] [-- Attachment #2.2: screen1.png --] [-- Type: image/png, Size: 43445 bytes --] [-- Attachment #2.3: screen2.png --] [-- Type: image/png, Size: 33008 bytes --] ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-10 17:35 ` Jan Djärv @ 2013-10-10 19:36 ` Eli Zaretskii 2013-10-11 5:44 ` Jan Djärv 2013-10-10 20:56 ` Stefan Monnier 1 sibling, 1 reply; 44+ messages in thread From: Eli Zaretskii @ 2013-10-10 19:36 UTC (permalink / raw) To: Jan Djärv; +Cc: 15575 > From: Jan Djärv <jan.h.d@swipnet.se> > Date: Thu, 10 Oct 2013 19:35:30 +0200 > Cc: 15575@debbugs.gnu.org > > > /* Count how many glyphs to copy and copy the glyphs. */ > > for (area = LEFT_MARGIN_AREA; area < LAST_AREA; ++area) > > for (i = 0; i < from->used[area]; i++) > > to->glyphs[area][i] = from->glyphs[area][i]; <<<<<<<<<<<<<< > > > > It is the same place in the code, but not the same line in the file. > > > then please tell what is the value of 'area' and of 'i' at the point > > of the crash. > > > > On Fedora 19: > > (gdb) p area > $1 = 1 > (gdb) p i > $2 = 0 > (gdb) > > > Btw, did you compile with --enable-checking, i.e. were the 3 eassert > > statements at the beginning of deep_copy_glyph_row compiled into the > > program? > > No, I did not. I usually don't because the checkings more often than not trip on something that really isn't a bug. I've never caught a real error with it. > > This one triggers: > > #3 0x0000000000449d2b in deep_copy_glyph_row (from=<optimized out>, > to=0xce9e40) at /home/jhd/src/emacs/current/src/xdisp.c:20597 > 20597 eassert (to->used[0] == from->used[0]); > > (gdb) p to->used[0] > $1 = -15072 > > There is some memory corruption. If I press F11 twice and then F10, the crash does not happen. The menu appears but there are major redrawing problems, for example, going down in the menu does not work, it just scrolls the buffer instead until the menu disappears over the top, the buffer is not redrawn correctly when the menu goes away, nor is the menu bar. I did not test it much. > Could be another symptom of the memory corruption. Can you please try the latest trunk (after reverting the patch you applied on my request)? I made some changes that perhaps could fix this. (I don't understand why the code worked for others on Fedora; are you using a different development environment: compiler and/or library or something?) ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-10 19:36 ` Eli Zaretskii @ 2013-10-11 5:44 ` Jan Djärv 2013-10-11 7:09 ` Eli Zaretskii 0 siblings, 1 reply; 44+ messages in thread From: Jan Djärv @ 2013-10-11 5:44 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 15575 Hello. 10 okt 2013 kl. 21:36 skrev Eli Zaretskii <eliz@gnu.org>: > Can you please try the latest trunk (after reverting the patch you > applied on my request)? I made some changes that perhaps could fix > this. > Sorry, no go. On Fedora 19, this assert triggers: 20591 { 20592 struct glyph *pointers[1 + LAST_AREA]; 20593 20594 /* Save glyph pointers of TO. */ 20595 memcpy (pointers, to->glyphs, sizeof to->glyphs); 20596 eassert (to->used[TEXT_AREA] == from->used[TEXT_AREA]); 20597 20598 /* Do a structure assignment. */ 20599 *to = *from; 20600 (gdb) p to->used[TEXT_AREA] $1 = -3929 (gdb) p from->used[TEXT_AREA] $2 = 274 If I run again, it will stop here again. but the values for to->used, from->used will be different. Full backtrace below. > (I don't understand why the code worked for others on Fedora; are you > using a different development environment: compiler and/or library or > something?) No, everything is stock Fedora 19, gcc 2.8.1, compiled with -g3, no optimizations, glibc 2.17. Emacs specs below stacktrace. Jan D. #0 0x0000003e6c20ee7b in raise () from /lib64/libpthread.so.0 No symbol table info available. #1 0x000000000054eab9 in terminate_due_to_signal (sig=6, backtrace_limit=2147483647) at /home/jhd/src/emacs/current/src/emacs.c:376 No locals. #2 0x00000000005d25e3 in die (msg=0x6ac030 "to->used[TEXT_AREA] == from->used[TEXT_AREA]", file=0x6a91b8 "/home/jhd/src/emacs/current/src/xdisp.c", line=20596) at /home/jhd/src/emacs/current/src/alloc.c:6605 No locals. #3 0x000000000046d9df in deep_copy_glyph_row (to=0x15c9a20, from=0x15cb230) at /home/jhd/src/emacs/current/src/xdisp.c:20596 pointers = {0x0, 0x1811, 0x7ffff0a70010, 0x7ffff0a70010} #4 0x000000000046dc26 in display_tty_menu_item (item_text=0xbf5224 <pure+2867940> "New Frame on Display...", width=40, face_id=15, x=0, y=24, submenu=0) at /home/jhd/src/emacs/current/src/xdisp.c:20648 it = {window = 13804165, w = 0xd2a280, f = 0xd2a090, method = GET_FROM_BUFFER, stop_charpos = 0, prev_stop = 0, base_level_stop = 0, end_charpos = 0, s = 0x0, string_nchars = 0, region_beg_charpos = -1, region_end_charpos = -1, redisplay_end_trigger_charpos = 0, multibyte_p = 1, header_line_p = 0, string_from_display_prop_p = 0, string_from_prefix_prop_p = 0, from_disp_prop_p = 0, ellipsis_p = 0, avoid_cursor_p = 0, dp = 0x0, dpvec = 0x0, dpend = 0x0, dpvec_char_len = 0, dpvec_face_id = 0, saved_face_id = 0, ctl_chars = {0 <repeats 16 times>}, start = {pos = {charpos = 0, bytepos = 0}, overlay_string_index = 0, string_pos = {charpos = 0, bytepos = 0}, dpvec_index = 0}, current = {pos = {charpos = 0, bytepos = 0}, overlay_string_index = -1, string_pos = {charpos = -1, bytepos = -1}, dpvec_index = -1}, n_overlay_strings = 0, overlay_strings_charpos = 0, overlay_strings = {0 <repeats 16 times>}, string_overlays = {0 <repeats 16 times>}, string = 13715186, from_overlay = 0, stack = {{string = 0, string_nchars = 0, end_charpos = 0, stop_charpos = 0, prev_stop = 0, base_level_stop = 0, cmp_it = {stop_pos = 0, id = 0, ch = 0, rule_idx = 0, lookback = 0, nglyphs = 0, reversed_p = false, charpos = 0, nchars = 0, nbytes = 0, from = 0, to = 0, width = 0}, face_id = 0, u = {image = {object = 0, slice = {x = 0, y = 0, width = 0, height = 0}, image_id = 0}, comp = {object = 0}, stretch = {object = 0}}, position = {charpos = 0, bytepos = 0}, current = {pos = {charpos = 0, bytepos = 0}, overlay_string_index = 0, string_pos = {charpos = 0, bytepos = 0}, dpvec_index = 0}, from_overlay = 0, area = LEFT_MARGIN_AREA, method = GET_FROM_BUFFER, paragraph_embedding = NEUTRAL_DIR, multibyte_p = 0, string_from_display_prop_p = 0, string_from_prefix_prop_p = 0, display_ellipsis_p = 0, avoid_cursor_p = 0, bidi_p = 0, from_disp_prop_p = 0, line_wrap = TRUNCATE, voffset = 0, space_width = 0, font_height = 0}, {string = 0, string_nchars = 0, end_charpos = 0, stop_charpos = 0, prev_stop = 0, base_level_stop = 0, cmp_it = {stop_pos = 0, id = 0, ch = 0, rule_idx = 0, lookback = 0, nglyphs = 0, reversed_p = false, charpos = 0, nchars = 0, nbytes = 0, from = 0, to = 0, width = 0}, face_id = 0, u = {image = {object = 0, slice = {x = 0, y = 0, width = 0, height = 0}, image_id = 0}, comp = {object = 0}, stretch = {object = 0}}, position = {charpos = 0, bytepos = 0}, current = {pos = {charpos = 0, bytepos = 0}, overlay_string_index = 0, string_pos = {charpos = 0, bytepos = 0}, dpvec_index = 0}, from_overlay = 0, area = LEFT_MARGIN_AREA, method = GET_FROM_BUFFER, paragraph_embedding = NEUTRAL_DIR, multibyte_p = 0, string_from_display_prop_p = 0, string_from_prefix_prop_p = 0, display_ellipsis_p = 0, avoid_cursor_p = 0, bidi_p = 0, from_disp_prop_p = 0, line_wrap = TRUNCATE, voffset = 0, space_width = 0, font_height = 0}, {string = 0, string_nchars = 0, end_charpos = 0, stop_charpos = 0, prev_stop = 0, base_level_stop = 0, cmp_it = {stop_pos = 0, id = 0, ch = 0, rule_idx = 0, lookback = 0, nglyphs = 0, reversed_p = false, charpos = 0, nchars = 0, nbytes = 0, from = 0, to = 0, width = 0}, face_id = 0, u = {image = {object = 0, slice = {x = 0, y = 0, width = 0, height = 0}, image_id = 0}, comp = {object = 0}, stretch = {object = 0}}, position = {charpos = 0, bytepos = 0}, current = {pos = {charpos = 0, bytepos = 0}, overlay_string_index = 0, string_pos = {charpos = 0, bytepos = 0}, dpvec_index = 0}, from_overlay = 0, area = LEFT_MARGIN_AREA, method = GET_FROM_BUFFER, paragraph_embedding = NEUTRAL_DIR, multibyte_p = 0, string_from_display_prop_p = 0, string_from_prefix_prop_p = 0, display_ellipsis_p = 0, avoid_cursor_p = 0, bidi_p = 0, from_disp_prop_p = 0, line_wrap = TRUNCATE, voffset = 0, space_width = 0, font_height = 0}, {string = 0, string_nchars = 0, end_charpos = 0, stop_charpos = 0, prev_stop = 0, base_level_stop = 0, cmp_it = {stop_pos = 0, id = 0, ch = 0, rule_idx = 0, lookback = 0, nglyphs = 0, reversed_p = false, charpos = 0, nchars = 0, nbytes = 0, from = 0, to = 0, width = 0}, face_id = 0, u = {image = {object = 0, slice = {x = 0, y = 0, width = 0, height = 0}, image_id = 0}, comp = {object = 0}, stretch = {object = 0}}, position = {charpos = 0, bytepos = 0}, current = {pos = {charpos = 0, bytepos = 0}, overlay_string_index = 0, string_pos = {charpos = 0, bytepos = 0}, dpvec_index = 0}, from_overlay = 0, area = LEFT_MARGIN_AREA, method = GET_FROM_BUFFER, paragraph_embedding = NEUTRAL_DIR, multibyte_p = 0, string_from_display_prop_p = 0, string_from_prefix_prop_p = 0, display_ellipsis_p = 0, avoid_cursor_p = 0, bidi_p = 0, from_disp_prop_p = 0, line_wrap = TRUNCATE, voffset = 0, space_width = 0, font_height = 0}, {string = 0, string_nchars = 0, end_charpos = 0, stop_charpos = 0, prev_stop = 0, base_level_stop = 0, cmp_it = {stop_pos = 0, id = 0, ch = 0, rule_idx = 0, lookback = 0, nglyphs = 0, reversed_p = false, charpos = 0, nchars = 0, nbytes = 0, from = 0, to = 0, width = 0}, face_id = 0, u = {image = {object = 0, slice = {x = 0, y = 0, width = 0, height = 0}, image_id = 0}, comp = {object = 0}, stretch = {object = 0}}, position = {charpos = 0, bytepos = 0}, current = {pos = {charpos = 0, bytepos = 0}, overlay_string_index = 0, string_pos = {charpos = 0, bytepos = 0}, dpvec_index = 0}, from_overlay = 0, area = LEFT_MARGIN_AREA, method = GET_FROM_BUFFER, paragraph_embedding = NEUTRAL_DIR, multibyte_p = 0, string_from_display_prop_p = 0, string_from_prefix_prop_p = 0, display_ellipsis_p = 0, avoid_cursor_p = 0, bidi_p = 0, from_disp_prop_p = 0, line_wrap = TRUNCATE, voffset = 0, space_width = 0, font_height = 0}}, sp = 0, selective = 0, what = IT_CHARACTER, face_id = 10, selective_display_ellipsis_p = 1, ctl_arrow_p = 1, face_box_p = 0, start_of_box_run_p = 0, end_of_box_run_p = 0, overlay_strings_at_end_processed_p = 0, ignore_overlay_strings_at_pos_p = 0, glyph_not_available_p = 0, starts_in_middle_of_char_p = 0, face_before_selective_p = 0, constrain_row_ascent_descent_p = 0, line_wrap = TRUNCATE, base_face_id = 10, c = 0, len = 0, cmp_it = {stop_pos = 0, id = -1, ch = 0, rule_idx = 0, lookback = 0, nglyphs = 0, reversed_p = false, charpos = 0, nchars = 0, nbytes = 0, from = 0, to = 0, width = 0}, char_to_display = 0, glyphless_method = GLYPHLESS_DISPLAY_THIN_SPACE, image_id = 0, slice = {x = 13715186, y = 13715186, width = 13715186, height = 13715186}, space_width = 13715186, voffset = 0, tab_width = 8, font_height = 13715186, object = 0, position = {charpos = 0, bytepos = 0}, truncation_pixel_width = 1, continuation_pixel_width = 0, first_visible_x = 0, last_visible_x = 79, last_visible_y = 21, extra_line_spacing = 0, max_extra_line_spacing = 0, override_ascent = -1, override_descent = 0, override_boff = 0, glyph_row = 0x15c9a20, area = TEXT_AREA, nglyphs = 1, pixel_width = 0, ascent = 0, descent = 0, max_ascent = 0, max_descent = 0, phys_ascent = 0, phys_descent = 0, max_phys_ascent = 0, max_phys_descent = 0, current_x = 0, continuation_lines_width = 0, eol_pos = {charpos = 0, bytepos = 0}, current_y = 0, first_vpos = 0, vpos = 0, hpos = 0, left_user_fringe_bitmap = 0, right_user_fringe_bitmap = 0, left_user_fringe_face_id = 0, right_user_fringe_face_id = 0, bidi_p = 0, bidi_it = {bytepos = 0, charpos = 0, ch = 0, nchars = 0, ch_len = 0, type = UNKNOWN_BT, type_after_w1 = UNKNOWN_BT, orig_type = UNKNOWN_BT, resolved_level = 0, invalid_levels = 0, invalid_rl_levels = 0, prev = {bytepos = 0, charpos = 0, type = UNKNOWN_BT, type_after_w1 = UNKNOWN_BT, orig_type = UNKNOWN_BT}, last_strong = {bytepos = 0, charpos = 0, type = UNKNOWN_BT, type_after_w1 = UNKNOWN_BT, orig_type = UNKNOWN_BT}, next_for_neutral = {bytepos = 0, charpos = 0, type = UNKNOWN_BT, type_after_w1 = UNKNOWN_BT, orig_type = UNKNOWN_BT}, prev_for_neutral = {bytepos = 0, charpos = 0, type = UNKNOWN_BT, type_after_w1 = UNKNOWN_BT, orig_type = UNKNOWN_BT}, next_for_ws = {bytepos = 0, charpos = 0, type = UNKNOWN_BT, type_after_w1 = UNKNOWN_BT, orig_type = UNKNOWN_BT}, next_en_pos = 0, next_en_type = UNKNOWN_BT, ignore_bn_limit = 0, sor = NEUTRAL_DIR, scan_dir = 0, disp_pos = 0, disp_prop = 0, stack_idx = 0, level_stack = {{level = 0, override = NEUTRAL_DIR} <repeats 64 times>}, string = {lstring = 13715186, s = 0x0, schars = 0, bufpos = 0, from_disp_str = 0, unibyte = 0}, w = 0xd2a280, paragraph_dir = NEUTRAL_DIR, separator_limit = 0, prev_was_pdf = 0, first_elt = 0, new_paragraph = 0, frame_window_p = 0}, paragraph_embedding = L2R} f = 0xd2a090 w = 0xd2a280 saved_used = 80 saved_truncated = 0 saved_width = 0 saved_reversed = 22815744 row = 0x15c9a20 item_len = 23 #5 0x00000000004f7568 in tty_menu_display (menu=0x1614910, x=0, y=1, pn=1, faces=0x7fffffffc770, mx=0, my=1, disp_help=1) at /home/jhd/src/emacs/current/src/term.c:2948 max_width = 40 i = 23 face = 15 width = 38 enabled = 1 mousehere = 0 row = 5 col = 0 sf = 0xd2a090 tty = 0x15c2400 #6 0x00000000004f89fb in tty_menu_activate (menu=0x15dc250, pane=0x7fffffffcb30, selidx=0x7fffffffcb2c, x0=1, y0=1, txt=0x7fffffffcb20, help_callback=0x4f8bfd <tty_menu_help_callback>, kbd_navigation=1) at /home/jhd/src/emacs/current/src/term.c:3364 input_status = 0 min_y = 1 max_y = 27 state = 0x7fffffffc700 statecount = 1 x = 0 y = 1 i = 1 leave = 0 onepane = 1 result = 1 title_faces = {17, 17, 17, 17} faces = {14, 15, 16, 17} buffers_num_deleted = 0 sf = 0xd2a090 tty = 0x15c2400 first_time = false selectface = 17825618 #7 0x00000000004f9852 in tty_menu_show (f=0xd2a090, x=1, y=0, for_click=1, keymaps=1, title=10139977, kbd_navigation=1, error_name=0x7fffffffcc38) at /home/jhd/src/emacs/current/src/term.c:3741 menu = 0x15dc250 pane = 0 selidx = 0 lpane = 1 status = 0 entry = 140737488341984 pane_prefix = 5548775 datap = 0xaffffcb40 <Address 0xaffffcb40 out of bounds> ulx = 2 uly = -5 width = 40 height = 27 item_x = 1 item_y = 0 dispwidth = 80 dispheight = 24 i = 219 j = 29 lines = 27 maxlines = 27 maxwidth = 29 specpdl_count = 21 #8 0x000000000048f5f0 in Fx_popup_menu (position=14081814, menu=18453990) at /home/jhd/src/emacs/current/src/menu.c:1449 keymap = 18453990 tem = 14081670 tem2 = 11119950 xpos = 1 ypos = 0 title = 10139977 error_name = 0x0 selection = 13715186 f = 0xd2a090 x = 4 y = 0 window = 13803669 keymaps = true for_click = true kbd_menu_navigation = true specpdl_count = 21 gcpro1 = {next = 0x54bb8a <FRAMEP+29>, var = 0x125c235, nvars = 140737488342096} #9 0x00000000005f39ba in Ffuncall (nargs=3, args=0x7fffffffcd98) at /home/jhd/src/emacs/current/src/eval.c:2792 fun = 9640293 original_fun = 14034146 funcar = 17373346 numargs = 2 lisp_numargs = 140737488342400 val = 18453990 internal_args = 0x7fffffffcda0 i = 2 #10 0x000000000063b95c in exec_byte_code (bytestr=11119561, vector=11119597, maxdepth=24, args_template=13715186, nargs=0, args=0x0) at /home/jhd/src/emacs/current/src/bytecode.c:919 targets = {0x63ef01 <exec_byte_code+17242>, 0x63ef5b <exec_byte_code+17332>, 0x63ef5d <exec_byte_code+17334>, 0x63ef5f <exec_byte_code+17336>, 0x63ef61 <exec_byte_code+17338>, 0x63ef61 <exec_byte_code+17338>, 0x63efc1 <exec_byte_code+17434>, 0x63f034 <exec_byte_code+17549>, 0x63b003 <exec_byte_code+1116>, 0x63b005 <exec_byte_code+1118>, 0x63b007 <exec_byte_code+1120>, 0x63b009 <exec_byte_code+1122>, 0x63b00b <exec_byte_code+1124>, 0x63b00b <exec_byte_code+1124>, 0x63b011 <exec_byte_code+1130>, 0x63afc8 <exec_byte_code+1057>, 0x63b56a <exec_byte_code+2499>, 0x63b56c <exec_byte_code+2501>, 0x63b56e <exec_byte_code+2503>, 0x63b570 <exec_byte_code+2505>, 0x63b572 <exec_byte_code+2507>, 0x63b572 <exec_byte_code+2507>, 0x63b5b3 <exec_byte_code+2572>, 0x63b578 <exec_byte_code+2513>, 0x63b867 <exec_byte_code+3264>, 0x63b869 <exec_byte_code+3266>, 0x63b86b <exec_byte_code+3268>, 0x63b86d <exec_byte_code+3270>, 0x63b86f <exec_byte_code+3272>, 0x63b86f <exec_byte_code+3272>, 0x63b80f <exec_byte_code+3176>, 0x63b82c <exec_byte_code+3205>, 0x63b929 <exec_byte_code+3458>, 0x63b92b <exec_byte_code+3460>, 0x63b92d <exec_byte_code+3462>, 0x63b92f <exec_byte_code+3464>, 0x63b931 <exec_byte_code+3466>, 0x63b931 <exec_byte_code+3466>, 0x63b8d1 <exec_byte_code+3370>, 0x63b8ee <exec_byte_code+3399>, 0x63b9e8 <exec_byte_code+3649>, 0x63b9ea <exec_byte_code+3651>, 0x63b9ec <exec_byte_code+3653>, 0x63b9ee <exec_byte_code+3655>, 0x63b9f0 <exec_byte_code+3657>, 0x63b9f0 <exec_byte_code+3657>, 0x63b990 <exec_byte_code+3561>, 0x63b9ad <exec_byte_code+3590>, 0x63ca1e <exec_byte_code+7799>, 0x63c74f <exec_byte_code+7080>, 0x63c746 <exec_byte_code+7071>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63cc35 <exec_byte_code+8334>, 0x63cd32 <exec_byte_code+8587>, 0x63cd85 <exec_byte_code+8670>, 0x63cdd8 <exec_byte_code+8753>, 0x63ce2f <exec_byte_code+8840>, 0x63b3d1 <exec_byte_code+2090>, 0x63b43b <exec_byte_code+2196>, 0x63ce95 <exec_byte_code+8942>, 0x63b306 <exec_byte_code+1887>, 0x63b49e <exec_byte_code+2295>, 0x63ceec <exec_byte_code+9029>, 0x63cf4f <exec_byte_code+9128>, 0x63cf92 <exec_byte_code+9195>, 0x63cff5 <exec_byte_code+9294>, 0x63d03f <exec_byte_code+9368>, 0x63d106 <exec_byte_code+9567>, 0x63d149 <exec_byte_code+9634>, 0x63d1ac <exec_byte_code+9733>, 0x63d22c <exec_byte_code+9861>, 0x63d26f <exec_byte_code+9928>, 0x63d2b2 <exec_byte_code+9995>, 0x63d315 <exec_byte_code+10094>, 0x63d378 <exec_byte_code+10193>, 0x63d3db <exec_byte_code+10292>, 0x63d45b <exec_byte_code+10420>, 0x63d4a5 <exec_byte_code+10494>, 0x63d4ef <exec_byte_code+10568>, 0x63d5b6 <exec_byte_code+10767>, 0x63d63f <exec_byte_code+10904>, 0x63d6c8 <exec_byte_code+11041>, 0x63d926 <exec_byte_code+11647>, 0x63d98e <exec_byte_code+11751>, 0x63d9f6 <exec_byte_code+11855>, 0x63da5e <exec_byte_code+11959>, 0x63dac6 <exec_byte_code+12063>, 0x63db10 <exec_byte_code+12137>, 0x63db9a <exec_byte_code+12275>, 0x63dbe4 <exec_byte_code+12349>, 0x63dc2e <exec_byte_code+12423>, 0x63dc78 <exec_byte_code+12497>, 0x63dd6f <exec_byte_code+12744>, 0x63c5ec <exec_byte_code+6725>, 0x63ddcc <exec_byte_code+12837>, 0x63de0f <exec_byte_code+12904>, 0x63ded1 <exec_byte_code+13098>, 0x63df2e <exec_byte_code+13191>, 0x63df8b <exec_byte_code+13284>, 0x63dfce <exec_byte_code+13351>, 0x63e01a <exec_byte_code+13427>, 0x63e066 <exec_byte_code+13503>, 0x63e0ba <exec_byte_code+13587>, 0x63ef01 <exec_byte_code+17242>, 0x63e107 <exec_byte_code+13664>, 0x63e145 <exec_byte_code+13726>, 0x63e183 <exec_byte_code+13788>, 0x63e1c1 <exec_byte_code+13850>, 0x63e1ff <exec_byte_code+13912>, 0x63e23d <exec_byte_code+13974>, 0x63c5ec <exec_byte_code+6725>, 0x63ef01 <exec_byte_code+17242>, 0x63e280 <exec_byte_code+14041>, 0x63e2cb <exec_byte_code+14116>, 0x63e30e <exec_byte_code+14183>, 0x63e351 <exec_byte_code+14250>, 0x63e3b4 <exec_byte_code+14349>, 0x63e417 <exec_byte_code+14448>, 0x63e45a <exec_byte_code+14515>, 0x63e578 <exec_byte_code+14801>, 0x63e5db <exec_byte_code+14900>, 0x63e63e <exec_byte_code+14999>, 0x63e6a1 <exec_byte_code+15098>, 0x63e6df <exec_byte_code+15160>, 0x63ef01 <exec_byte_code+17242>, 0x63c523 <exec_byte_code+6524>, 0x63ba84 <exec_byte_code+3805>, 0x63b1c5 <exec_byte_code+1566>, 0x63bb9b <exec_byte_code+4084>, 0x63bcdc <exec_byte_code+4405>, 0x63be11 <exec_byte_code+4714>, 0x63c4b4 <exec_byte_code+6413>, 0x63c4f1 <exec_byte_code+6474>, 0x63b7c1 <exec_byte_code+3098>, 0x63c5ad <exec_byte_code+6662>, 0x63c61e <exec_byte_code+6775>, 0x63c6a2 <exec_byte_code+6907>, 0x63c6e1 <exec_byte_code+6970>, 0x63ca5d <exec_byte_code+7862>, 0x63cad9 <exec_byte_code+7986>, 0x63cb59 <exec_byte_code+8114>, 0x63cbba <exec_byte_code+8211>, 0x63ba41 <exec_byte_code+3738>, 0x63e722 <exec_byte_code+15227>, 0x63e7a2 <exec_byte_code+15355>, 0x63e7e5 <exec_byte_code+15422>, 0x63e828 <exec_byte_code+15489>, 0x63e86b <exec_byte_code+15556>, 0x63e8ae <exec_byte_code+15623>, 0x63e911 <exec_byte_code+15722>, 0x63e974 <exec_byte_code+15821>, 0x63e9d7 <exec_byte_code+15920>, 0x63ea3a <exec_byte_code+16019>, 0x63eb9d <exec_byte_code+16374>, 0x63ec00 <exec_byte_code+16473>, 0x63ec63 <exec_byte_code+16572>, 0x63eca6 <exec_byte_code+16639>, 0x63ed09 <exec_byte_code+16738>, 0x63ed6c <exec_byte_code+16837>, 0x63edbd <exec_byte_code+16918>, 0x63ee0e <exec_byte_code+16999>, 0x63dcc2 <exec_byte_code+12571>, 0x63dd0c <exec_byte_code+12645>, 0x63ee58 <exec_byte_code+17073>, 0x63eeaf <exec_byte_code+17160>, 0x63ef01 <exec_byte_code+17242>, 0x63bf46 <exec_byte_code+5023>, 0x63c030 <exec_byte_code+5257>, 0x63c156 <exec_byte_code+5551>, 0x63c27c <exec_byte_code+5845>, 0x63c398 <exec_byte_code+6129>, 0x63d089 <exec_byte_code+9442>, 0x63d539 <exec_byte_code+10642>, 0x63de54 <exec_byte_code+12973>, 0x63f0ce <exec_byte_code+17703>, 0x63f144 <exec_byte_code+17821>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63f1e1 <exec_byte_code+17978>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63f269 <exec_byte_code+18114> <repeats 64 times>} count = 16 count_volatile = 0 op = 2 vectorp = 0xa9abf0 <pure+1449136> vectorp_volatile = 0x0 stack = {pc = 0xbefc4b <pure+2845963> "\211\024\203\035\001\016\037\203", <incomplete sequence \313>, byte_string = 11119561, byte_string_start = 0xbefbd2 <pure+2845842> "\306\b!\203\n", next = 0x7fffffffd3b0} stack_volatile = {pc = 0x0, byte_string = 0, byte_string_start = 0x0, next = 0x0} top = 0x7fffffffcd98 result = 14081702 type = (CONDITION_CASE | unknown: 32766) #11 0x00000000005f458a in funcall_lambda (fun=11119437, nargs=4, arg_vector=0xa9abed <pure+1449133>) at /home/jhd/src/emacs/current/src/eval.c:3023 val = 6233134 syms_left = 13715186 next = 22793810 lexenv = 13715186 count = 12 i = 4 optional = true rest = false #12 0x00000000005f3b7c in Ffuncall (nargs=5, args=0x7fffffffd2e8) at /home/jhd/src/emacs/current/src/eval.c:2838 fun = 11119437 original_fun = 22552370 funcar = 12898408144 numargs = 4 lisp_numargs = 140737488343760 val = 14081718 internal_args = 0x10 i = 3 #13 0x000000000063b95c in exec_byte_code (bytestr=11120737, vector=11120773, maxdepth=32, args_template=13715186, nargs=0, args=0x0) at /home/jhd/src/emacs/current/src/bytecode.c:919 targets = {0x63ef01 <exec_byte_code+17242>, 0x63ef5b <exec_byte_code+17332>, 0x63ef5d <exec_byte_code+17334>, 0x63ef5f <exec_byte_code+17336>, 0x63ef61 <exec_byte_code+17338>, 0x63ef61 <exec_byte_code+17338>, 0x63efc1 <exec_byte_code+17434>, 0x63f034 <exec_byte_code+17549>, 0x63b003 <exec_byte_code+1116>, 0x63b005 <exec_byte_code+1118>, 0x63b007 <exec_byte_code+1120>, 0x63b009 <exec_byte_code+1122>, 0x63b00b <exec_byte_code+1124>, 0x63b00b <exec_byte_code+1124>, 0x63b011 <exec_byte_code+1130>, 0x63afc8 <exec_byte_code+1057>, 0x63b56a <exec_byte_code+2499>, 0x63b56c <exec_byte_code+2501>, 0x63b56e <exec_byte_code+2503>, 0x63b570 <exec_byte_code+2505>, 0x63b572 <exec_byte_code+2507>, 0x63b572 <exec_byte_code+2507>, 0x63b5b3 <exec_byte_code+2572>, 0x63b578 <exec_byte_code+2513>, 0x63b867 <exec_byte_code+3264>, 0x63b869 <exec_byte_code+3266>, 0x63b86b <exec_byte_code+3268>, 0x63b86d <exec_byte_code+3270>, 0x63b86f <exec_byte_code+3272>, 0x63b86f <exec_byte_code+3272>, 0x63b80f <exec_byte_code+3176>, 0x63b82c <exec_byte_code+3205>, 0x63b929 <exec_byte_code+3458>, 0x63b92b <exec_byte_code+3460>, 0x63b92d <exec_byte_code+3462>, 0x63b92f <exec_byte_code+3464>, 0x63b931 <exec_byte_code+3466>, 0x63b931 <exec_byte_code+3466>, 0x63b8d1 <exec_byte_code+3370>, 0x63b8ee <exec_byte_code+3399>, 0x63b9e8 <exec_byte_code+3649>, 0x63b9ea <exec_byte_code+3651>, 0x63b9ec <exec_byte_code+3653>, 0x63b9ee <exec_byte_code+3655>, 0x63b9f0 <exec_byte_code+3657>, 0x63b9f0 <exec_byte_code+3657>, 0x63b990 <exec_byte_code+3561>, 0x63b9ad <exec_byte_code+3590>, 0x63ca1e <exec_byte_code+7799>, 0x63c74f <exec_byte_code+7080>, 0x63c746 <exec_byte_code+7071>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63cc35 <exec_byte_code+8334>, 0x63cd32 <exec_byte_code+8587>, 0x63cd85 <exec_byte_code+8670>, 0x63cdd8 <exec_byte_code+8753>, 0x63ce2f <exec_byte_code+8840>, 0x63b3d1 <exec_byte_code+2090>, 0x63b43b <exec_byte_code+2196>, 0x63ce95 <exec_byte_code+8942>, 0x63b306 <exec_byte_code+1887>, 0x63b49e <exec_byte_code+2295>, 0x63ceec <exec_byte_code+9029>, 0x63cf4f <exec_byte_code+9128>, 0x63cf92 <exec_byte_code+9195>, 0x63cff5 <exec_byte_code+9294>, 0x63d03f <exec_byte_code+9368>, 0x63d106 <exec_byte_code+9567>, 0x63d149 <exec_byte_code+9634>, 0x63d1ac <exec_byte_code+9733>, 0x63d22c <exec_byte_code+9861>, 0x63d26f <exec_byte_code+9928>, 0x63d2b2 <exec_byte_code+9995>, 0x63d315 <exec_byte_code+10094>, 0x63d378 <exec_byte_code+10193>, 0x63d3db <exec_byte_code+10292>, 0x63d45b <exec_byte_code+10420>, 0x63d4a5 <exec_byte_code+10494>, 0x63d4ef <exec_byte_code+10568>, 0x63d5b6 <exec_byte_code+10767>, 0x63d63f <exec_byte_code+10904>, 0x63d6c8 <exec_byte_code+11041>, 0x63d926 <exec_byte_code+11647>, 0x63d98e <exec_byte_code+11751>, 0x63d9f6 <exec_byte_code+11855>, 0x63da5e <exec_byte_code+11959>, 0x63dac6 <exec_byte_code+12063>, 0x63db10 <exec_byte_code+12137>, 0x63db9a <exec_byte_code+12275>, 0x63dbe4 <exec_byte_code+12349>, 0x63dc2e <exec_byte_code+12423>, 0x63dc78 <exec_byte_code+12497>, 0x63dd6f <exec_byte_code+12744>, 0x63c5ec <exec_byte_code+6725>, 0x63ddcc <exec_byte_code+12837>, 0x63de0f <exec_byte_code+12904>, 0x63ded1 <exec_byte_code+13098>, 0x63df2e <exec_byte_code+13191>, 0x63df8b <exec_byte_code+13284>, 0x63dfce <exec_byte_code+13351>, 0x63e01a <exec_byte_code+13427>, 0x63e066 <exec_byte_code+13503>, 0x63e0ba <exec_byte_code+13587>, 0x63ef01 <exec_byte_code+17242>, 0x63e107 <exec_byte_code+13664>, 0x63e145 <exec_byte_code+13726>, 0x63e183 <exec_byte_code+13788>, 0x63e1c1 <exec_byte_code+13850>, 0x63e1ff <exec_byte_code+13912>, 0x63e23d <exec_byte_code+13974>, 0x63c5ec <exec_byte_code+6725>, 0x63ef01 <exec_byte_code+17242>, 0x63e280 <exec_byte_code+14041>, 0x63e2cb <exec_byte_code+14116>, 0x63e30e <exec_byte_code+14183>, 0x63e351 <exec_byte_code+14250>, 0x63e3b4 <exec_byte_code+14349>, 0x63e417 <exec_byte_code+14448>, 0x63e45a <exec_byte_code+14515>, 0x63e578 <exec_byte_code+14801>, 0x63e5db <exec_byte_code+14900>, 0x63e63e <exec_byte_code+14999>, 0x63e6a1 <exec_byte_code+15098>, 0x63e6df <exec_byte_code+15160>, 0x63ef01 <exec_byte_code+17242>, 0x63c523 <exec_byte_code+6524>, 0x63ba84 <exec_byte_code+3805>, 0x63b1c5 <exec_byte_code+1566>, 0x63bb9b <exec_byte_code+4084>, 0x63bcdc <exec_byte_code+4405>, 0x63be11 <exec_byte_code+4714>, 0x63c4b4 <exec_byte_code+6413>, 0x63c4f1 <exec_byte_code+6474>, 0x63b7c1 <exec_byte_code+3098>, 0x63c5ad <exec_byte_code+6662>, 0x63c61e <exec_byte_code+6775>, 0x63c6a2 <exec_byte_code+6907>, 0x63c6e1 <exec_byte_code+6970>, 0x63ca5d <exec_byte_code+7862>, 0x63cad9 <exec_byte_code+7986>, 0x63cb59 <exec_byte_code+8114>, 0x63cbba <exec_byte_code+8211>, 0x63ba41 <exec_byte_code+3738>, 0x63e722 <exec_byte_code+15227>, 0x63e7a2 <exec_byte_code+15355>, 0x63e7e5 <exec_byte_code+15422>, 0x63e828 <exec_byte_code+15489>, 0x63e86b <exec_byte_code+15556>, 0x63e8ae <exec_byte_code+15623>, 0x63e911 <exec_byte_code+15722>, 0x63e974 <exec_byte_code+15821>, 0x63e9d7 <exec_byte_code+15920>, 0x63ea3a <exec_byte_code+16019>, 0x63eb9d <exec_byte_code+16374>, 0x63ec00 <exec_byte_code+16473>, 0x63ec63 <exec_byte_code+16572>, 0x63eca6 <exec_byte_code+16639>, 0x63ed09 <exec_byte_code+16738>, 0x63ed6c <exec_byte_code+16837>, 0x63edbd <exec_byte_code+16918>, 0x63ee0e <exec_byte_code+16999>, 0x63dcc2 <exec_byte_code+12571>, 0x63dd0c <exec_byte_code+12645>, 0x63ee58 <exec_byte_code+17073>, 0x63eeaf <exec_byte_code+17160>, 0x63ef01 <exec_byte_code+17242>, 0x63bf46 <exec_byte_code+5023>, 0x63c030 <exec_byte_code+5257>, 0x63c156 <exec_byte_code+5551>, 0x63c27c <exec_byte_code+5845>, 0x63c398 <exec_byte_code+6129>, 0x63d089 <exec_byte_code+9442>, 0x63d539 <exec_byte_code+10642>, 0x63de54 <exec_byte_code+12973>, 0x63f0ce <exec_byte_code+17703>, 0x63f144 <exec_byte_code+17821>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63f1e1 <exec_byte_code+17978>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63f269 <exec_byte_code+18114> <repeats 64 times>} count = 8 count_volatile = 5548775 op = 4 vectorp = 0xa9b088 <pure+1450312> vectorp_volatile = 0x7fffffffd400 stack = {pc = 0xbefaca <pure+2845578> "*\202q", byte_string = 11120737, byte_string_start = 0xbefa73 <pure+2845491> "\306\b\206\a", next = 0x7fffffffdc30} stack_volatile = {pc = 0x7fffffffd410 "\362", <incomplete sequence \321>, byte_string = 19519181, byte_string_start = 0x7fffffffd3c0 <incomplete sequence \372\276>, next = 0x129d6cd} top = 0x7fffffffd2e8 result = 12396540 type = (CONDITION_CASE | unknown: 32766) #14 0x00000000005f458a in funcall_lambda (fun=11120685, nargs=0, arg_vector=0xa9b085 <pure+1450309>) at /home/jhd/src/emacs/current/src/eval.c:3023 val = 6233134 syms_left = 13715186 next = 13778658 lexenv = 13715186 count = 7 i = 0 optional = true rest = false #15 0x00000000005f3b7c in Ffuncall (nargs=1, args=0x7fffffffd848) at /home/jhd/src/emacs/current/src/eval.c:2838 fun = 11120685 original_fun = 22794386 funcar = 5 numargs = 0 lisp_numargs = 5 val = 5552558 internal_args = 0x7fffffffdb80 i = 13846992 #16 0x00000000005f326e in apply1 (fn=22794386, arg=13715186) at /home/jhd/src/emacs/current/src/eval.c:2555 ret_ungc_val = 17796352 gcpro1 = {next = 0x7fffffffd890, var = 0x552688 <temporarily_switch_to_single_kboard+162>, nvars = 13715186} #17 0x00000000005ea95e in Fcall_interactively (function=22794386, record_flag=13715186, keys=13734237) at /home/jhd/src/emacs/current/src/callint.c:378 input = 13715186 funval = 11120685 events = 20 args = 0x7fffffffda48 visargs = 0xd0fa96 specs = 13715186 filter_specs = 13715186 teml = 13096397 up_event = 13715186 enable = 13715186 speccount = 5 next_event = 13096392 prefix_arg = 13715186 string = 0x0 tem = 0xc7d5cd <Scall_interactively+5> "" varies = 0xd1fb92 "" i = 47244630640 nargs = 5552693 mark = 5546853 arg_from_tty = false gcpro1 = {next = 0x54ba35 <PSEUDOVECTORP+63>, var = 0xa00000006, nvars = 9656597} gcpro2 = {next = 0x7fffffffd9b0, var = 0xa005f45a1, nvars = 9656592} gcpro3 = {next = 0x7fffffffd930, var = 0xd146f2, nvars = 8} gcpro4 = {next = 0x7fffffffd510, var = 0xae0508 <pure+1734088>, nvars = 579831989429} gcpro5 = {next = 0xd146f2, var = 0xc010bd316, nvars = 11404464} key_count = 1 record_then_fail = false save_this_command = 22794386 save_last_command = 13715186 save_this_original_command = 22794386 save_real_this_command = 22794386 #18 0x00000000005f39e9 in Ffuncall (nargs=4, args=0x7fffffffdb78) at /home/jhd/src/emacs/current/src/eval.c:2796 fun = 13096397 original_fun = 13860226 funcar = 13860418 numargs = 3 lisp_numargs = 13763410 val = 13715186 internal_args = 0x7fffffffdb80 i = 2 #19 0x000000000063b95c in exec_byte_code (bytestr=10564281, vector=10564317, maxdepth=52, args_template=4100, nargs=1, args=0x7fffffffe0e0) at /home/jhd/src/emacs/current/src/bytecode.c:919 targets = {0x63ef01 <exec_byte_code+17242>, 0x63ef5b <exec_byte_code+17332>, 0x63ef5d <exec_byte_code+17334>, 0x63ef5f <exec_byte_code+17336>, 0x63ef61 <exec_byte_code+17338>, 0x63ef61 <exec_byte_code+17338>, 0x63efc1 <exec_byte_code+17434>, 0x63f034 <exec_byte_code+17549>, 0x63b003 <exec_byte_code+1116>, 0x63b005 <exec_byte_code+1118>, 0x63b007 <exec_byte_code+1120>, 0x63b009 <exec_byte_code+1122>, 0x63b00b <exec_byte_code+1124>, 0x63b00b <exec_byte_code+1124>, 0x63b011 <exec_byte_code+1130>, 0x63afc8 <exec_byte_code+1057>, 0x63b56a <exec_byte_code+2499>, 0x63b56c <exec_byte_code+2501>, 0x63b56e <exec_byte_code+2503>, 0x63b570 <exec_byte_code+2505>, 0x63b572 <exec_byte_code+2507>, 0x63b572 <exec_byte_code+2507>, 0x63b5b3 <exec_byte_code+2572>, 0x63b578 <exec_byte_code+2513>, 0x63b867 <exec_byte_code+3264>, 0x63b869 <exec_byte_code+3266>, 0x63b86b <exec_byte_code+3268>, 0x63b86d <exec_byte_code+3270>, 0x63b86f <exec_byte_code+3272>, 0x63b86f <exec_byte_code+3272>, 0x63b80f <exec_byte_code+3176>, 0x63b82c <exec_byte_code+3205>, 0x63b929 <exec_byte_code+3458>, 0x63b92b <exec_byte_code+3460>, 0x63b92d <exec_byte_code+3462>, 0x63b92f <exec_byte_code+3464>, 0x63b931 <exec_byte_code+3466>, 0x63b931 <exec_byte_code+3466>, 0x63b8d1 <exec_byte_code+3370>, 0x63b8ee <exec_byte_code+3399>, 0x63b9e8 <exec_byte_code+3649>, 0x63b9ea <exec_byte_code+3651>, 0x63b9ec <exec_byte_code+3653>, 0x63b9ee <exec_byte_code+3655>, 0x63b9f0 <exec_byte_code+3657>, 0x63b9f0 <exec_byte_code+3657>, 0x63b990 <exec_byte_code+3561>, 0x63b9ad <exec_byte_code+3590>, 0x63ca1e <exec_byte_code+7799>, 0x63c74f <exec_byte_code+7080>, 0x63c746 <exec_byte_code+7071>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63cc35 <exec_byte_code+8334>, 0x63cd32 <exec_byte_code+8587>, 0x63cd85 <exec_byte_code+8670>, 0x63cdd8 <exec_byte_code+8753>, 0x63ce2f <exec_byte_code+8840>, 0x63b3d1 <exec_byte_code+2090>, 0x63b43b <exec_byte_code+2196>, 0x63ce95 <exec_byte_code+8942>, 0x63b306 <exec_byte_code+1887>, 0x63b49e <exec_byte_code+2295>, 0x63ceec <exec_byte_code+9029>, 0x63cf4f <exec_byte_code+9128>, 0x63cf92 <exec_byte_code+9195>, 0x63cff5 <exec_byte_code+9294>, 0x63d03f <exec_byte_code+9368>, 0x63d106 <exec_byte_code+9567>, 0x63d149 <exec_byte_code+9634>, 0x63d1ac <exec_byte_code+9733>, 0x63d22c <exec_byte_code+9861>, 0x63d26f <exec_byte_code+9928>, 0x63d2b2 <exec_byte_code+9995>, 0x63d315 <exec_byte_code+10094>, 0x63d378 <exec_byte_code+10193>, 0x63d3db <exec_byte_code+10292>, 0x63d45b <exec_byte_code+10420>, 0x63d4a5 <exec_byte_code+10494>, 0x63d4ef <exec_byte_code+10568>, 0x63d5b6 <exec_byte_code+10767>, 0x63d63f <exec_byte_code+10904>, 0x63d6c8 <exec_byte_code+11041>, 0x63d926 <exec_byte_code+11647>, 0x63d98e <exec_byte_code+11751>, 0x63d9f6 <exec_byte_code+11855>, 0x63da5e <exec_byte_code+11959>, 0x63dac6 <exec_byte_code+12063>, 0x63db10 <exec_byte_code+12137>, 0x63db9a <exec_byte_code+12275>, 0x63dbe4 <exec_byte_code+12349>, 0x63dc2e <exec_byte_code+12423>, 0x63dc78 <exec_byte_code+12497>, 0x63dd6f <exec_byte_code+12744>, 0x63c5ec <exec_byte_code+6725>, 0x63ddcc <exec_byte_code+12837>, 0x63de0f <exec_byte_code+12904>, 0x63ded1 <exec_byte_code+13098>, 0x63df2e <exec_byte_code+13191>, 0x63df8b <exec_byte_code+13284>, 0x63dfce <exec_byte_code+13351>, 0x63e01a <exec_byte_code+13427>, 0x63e066 <exec_byte_code+13503>, 0x63e0ba <exec_byte_code+13587>, 0x63ef01 <exec_byte_code+17242>, 0x63e107 <exec_byte_code+13664>, 0x63e145 <exec_byte_code+13726>, 0x63e183 <exec_byte_code+13788>, 0x63e1c1 <exec_byte_code+13850>, 0x63e1ff <exec_byte_code+13912>, 0x63e23d <exec_byte_code+13974>, 0x63c5ec <exec_byte_code+6725>, 0x63ef01 <exec_byte_code+17242>, 0x63e280 <exec_byte_code+14041>, 0x63e2cb <exec_byte_code+14116>, 0x63e30e <exec_byte_code+14183>, 0x63e351 <exec_byte_code+14250>, 0x63e3b4 <exec_byte_code+14349>, 0x63e417 <exec_byte_code+14448>, 0x63e45a <exec_byte_code+14515>, 0x63e578 <exec_byte_code+14801>, 0x63e5db <exec_byte_code+14900>, 0x63e63e <exec_byte_code+14999>, 0x63e6a1 <exec_byte_code+15098>, 0x63e6df <exec_byte_code+15160>, 0x63ef01 <exec_byte_code+17242>, 0x63c523 <exec_byte_code+6524>, 0x63ba84 <exec_byte_code+3805>, 0x63b1c5 <exec_byte_code+1566>, 0x63bb9b <exec_byte_code+4084>, 0x63bcdc <exec_byte_code+4405>, 0x63be11 <exec_byte_code+4714>, 0x63c4b4 <exec_byte_code+6413>, 0x63c4f1 <exec_byte_code+6474>, 0x63b7c1 <exec_byte_code+3098>, 0x63c5ad <exec_byte_code+6662>, 0x63c61e <exec_byte_code+6775>, 0x63c6a2 <exec_byte_code+6907>, 0x63c6e1 <exec_byte_code+6970>, 0x63ca5d <exec_byte_code+7862>, 0x63cad9 <exec_byte_code+7986>, 0x63cb59 <exec_byte_code+8114>, 0x63cbba <exec_byte_code+8211>, 0x63ba41 <exec_byte_code+3738>, 0x63e722 <exec_byte_code+15227>, 0x63e7a2 <exec_byte_code+15355>, 0x63e7e5 <exec_byte_code+15422>, 0x63e828 <exec_byte_code+15489>, 0x63e86b <exec_byte_code+15556>, 0x63e8ae <exec_byte_code+15623>, 0x63e911 <exec_byte_code+15722>, 0x63e974 <exec_byte_code+15821>, 0x63e9d7 <exec_byte_code+15920>, 0x63ea3a <exec_byte_code+16019>, 0x63eb9d <exec_byte_code+16374>, 0x63ec00 <exec_byte_code+16473>, 0x63ec63 <exec_byte_code+16572>, 0x63eca6 <exec_byte_code+16639>, 0x63ed09 <exec_byte_code+16738>, 0x63ed6c <exec_byte_code+16837>, 0x63edbd <exec_byte_code+16918>, 0x63ee0e <exec_byte_code+16999>, 0x63dcc2 <exec_byte_code+12571>, 0x63dd0c <exec_byte_code+12645>, 0x63ee58 <exec_byte_code+17073>, 0x63eeaf <exec_byte_code+17160>, 0x63ef01 <exec_byte_code+17242>, 0x63bf46 <exec_byte_code+5023>, 0x63c030 <exec_byte_code+5257>, 0x63c156 <exec_byte_code+5551>, 0x63c27c <exec_byte_code+5845>, 0x63c398 <exec_byte_code+6129>, 0x63d089 <exec_byte_code+9442>, 0x63d539 <exec_byte_code+10642>, 0x63de54 <exec_byte_code+12973>, 0x63f0ce <exec_byte_code+17703>, 0x63f144 <exec_byte_code+17821>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63f1e1 <exec_byte_code+17978>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63ef01 <exec_byte_code+17242>, 0x63f269 <exec_byte_code+18114> <repeats 64 times>} count = 4 count_volatile = 13715186 op = 3 vectorp = 0xa132e0 <pure+893856> vectorp_volatile = 0x7fffffffdcf0 stack = {pc = 0xc29bc2 <pure+3083394> "\006\006\071\203\225", byte_string = 10564281, byte_string_start = 0xc29b54 <pure+3083284> "\305\020\211?\205\f", next = 0x0} stack_volatile = {pc = 0x7f01ffffdc40 <Address 0x7f01ffffdc40 out of bounds>, byte_string = 6255360, byte_string_start = 0xd1fb92 "", next = 0xd6e356} top = 0x7fffffffdb78 result = 140737488347024 type = (CONDITION_CASE | unknown: 32766) #20 0x00000000005f419f in funcall_lambda (fun=10564237, nargs=1, arg_vector=0x7fffffffe0d8) at /home/jhd/src/emacs/current/src/eval.c:2957 val = 6233134 syms_left = 4100 next = 22996272 lexenv = 51539607552 count = 4 i = 5552693 optional = false rest = false #21 0x00000000005f3b7c in Ffuncall (nargs=2, args=0x7fffffffe0d0) at /home/jhd/src/emacs/current/src/eval.c:2838 fun = 10564237 original_fun = 13767170 funcar = 6634639 numargs = 1 lisp_numargs = 140737488347344 val = 1 internal_args = 0x0 i = 0 #22 0x00000000005f3313 in call1 (fn=13767170, arg1=22794386) at /home/jhd/src/emacs/current/src/eval.c:2588 ret_ungc_val = 23126486 gcpro1 = {next = 0x7fffffffe100, var = 0x5c8bbc <Fundo_boundary+165>, nvars = 2} args = {13767170, 22794386} #23 0x0000000000553829 in command_loop_1 () at /home/jhd/src/emacs/current/src/keyboard.c:1557 scount = 2 cmd = 22794386 keybuf = {17826690, 364, 200, 196, 504, 13715186, 140737488347520, 6114545, 296, -140737488347631, 140733193388051, 4, 52, 0, 140737488347632, 0, 472446402651, 0, 0, 532575944823, 140737488347631, 6246214, 17047478, 2, 296, -140737488347759, 19, 4, 52, 268097529728} i = 1 prev_modiff = 10 prev_buffer = 0xd1e0a0 already_adjusted = false #24 0x00000000005f000c in internal_condition_case (bfun=0x552f07 <command_loop_1>, handlers=13774770, hfun=0x5526d7 <cmd_error>) at /home/jhd/src/emacs/current/src/eval.c:1331 val = 268094144604 c = 0x15f6130 #25 0x0000000000552b8a in command_loop_2 (ignore=13715186) at /home/jhd/src/emacs/current/src/keyboard.c:1158 val = 0 #26 0x00000000005ef48f in internal_catch (tag=13770706, func=0x552b64 <command_loop_2>, arg=13715186) at /home/jhd/src/emacs/current/src/eval.c:1097 val = 13715186 c = 0x15f6000 #27 0x0000000000552b38 in command_loop () at /home/jhd/src/emacs/current/src/keyboard.c:1137 No locals. #28 0x00000000005521e2 in recursive_edit_1 () at /home/jhd/src/emacs/current/src/keyboard.c:776 count = 1 val = 13715186 #29 0x00000000005523c7 in Frecursive_edit () at /home/jhd/src/emacs/current/src/keyboard.c:840 count = 0 buffer = 13715186 #30 0x0000000000550373 in main (argc=3, argv=0x7fffffffe5c8) at /home/jhd/src/emacs/current/src/emacs.c:1577 dummy = 140737488348288 stack_bottom_variable = 0 '\000' do_initial_setlocale = true dumping = false skip_args = 1 rlim = {rlim_cur = 8720000, rlim_max = 18446744073709551615} no_loadup = false junk = 0x0 dname_arg = 0x0 ch_to_dir = 0x3e6b822208 "" Initial frame selected; you cannot go up. #0 0x0000003e6c20ee7b in raise () from /lib64/libpthread.so.0 #1 0x000000000054eab9 in terminate_due_to_signal (sig=6, backtrace_limit=2147483647) at /home/jhd/src/emacs/current/src/emacs.c:376 #2 0x00000000005d25e3 in die (msg=0x6ac030 "to->used[TEXT_AREA] == from->used[TEXT_AREA]", file=0x6a91b8 "/home/jhd/src/emacs/current/src/xdisp.c", line=20596) at /home/jhd/src/emacs/current/src/alloc.c:6605 #3 0x000000000046d9df in deep_copy_glyph_row (to=0x15c9a20, from=0x15cb230) at /home/jhd/src/emacs/current/src/xdisp.c:20596 #4 0x000000000046dc26 in display_tty_menu_item (item_text=0xbf5224 <pure+2867940> "New Frame on Display...", width=40, face_id=15, x=0, y=24, submenu=0) at /home/jhd/src/emacs/current/src/xdisp.c:20648 #5 0x00000000004f7568 in tty_menu_display (menu=0x1614910, x=0, y=1, pn=1, faces=0x7fffffffc770, mx=0, my=1, disp_help=1) at /home/jhd/src/emacs/current/src/term.c:2948 #6 0x00000000004f89fb in tty_menu_activate (menu=0x15dc250, pane=0x7fffffffcb30, selidx=0x7fffffffcb2c, x0=1, y0=1, txt=0x7fffffffcb20, help_callback=0x4f8bfd <tty_menu_help_callback>, kbd_navigation=1) at /home/jhd/src/emacs/current/src/term.c:3364 #7 0x00000000004f9852 in tty_menu_show (f=0xd2a090, x=1, y=0, for_click=1, keymaps=1, title=10139977, kbd_navigation=1, error_name=0x7fffffffcc38) at /home/jhd/src/emacs/current/src/term.c:3741 #8 0x000000000048f5f0 in Fx_popup_menu (position=14081814, menu=18453990) at /home/jhd/src/emacs/current/src/menu.c:1449 #9 0x00000000005f39ba in Ffuncall (nargs=3, args=0x7fffffffcd98) at /home/jhd/src/emacs/current/src/eval.c:2792 #10 0x000000000063b95c in exec_byte_code (bytestr=11119561, vector=11119597, maxdepth=24, args_template=13715186, nargs=0, args=0x0) at /home/jhd/src/emacs/current/src/bytecode.c:919 #11 0x00000000005f458a in funcall_lambda (fun=11119437, nargs=4, arg_vector=0xa9abed <pure+1449133>) at /home/jhd/src/emacs/current/src/eval.c:3023 #12 0x00000000005f3b7c in Ffuncall (nargs=5, args=0x7fffffffd2e8) at /home/jhd/src/emacs/current/src/eval.c:2838 #13 0x000000000063b95c in exec_byte_code (bytestr=11120737, vector=11120773, maxdepth=32, args_template=13715186, nargs=0, args=0x0) at /home/jhd/src/emacs/current/src/bytecode.c:919 #14 0x00000000005f458a in funcall_lambda (fun=11120685, nargs=0, arg_vector=0xa9b085 <pure+1450309>) at /home/jhd/src/emacs/current/src/eval.c:3023 #15 0x00000000005f3b7c in Ffuncall (nargs=1, args=0x7fffffffd848) at /home/jhd/src/emacs/current/src/eval.c:2838 #16 0x00000000005f326e in apply1 (fn=22794386, arg=13715186) at /home/jhd/src/emacs/current/src/eval.c:2555 #17 0x00000000005ea95e in Fcall_interactively (function=22794386, record_flag=13715186, keys=13734237) at /home/jhd/src/emacs/current/src/callint.c:378 #18 0x00000000005f39e9 in Ffuncall (nargs=4, args=0x7fffffffdb78) at /home/jhd/src/emacs/current/src/eval.c:2796 #19 0x000000000063b95c in exec_byte_code (bytestr=10564281, vector=10564317, maxdepth=52, args_template=4100, nargs=1, args=0x7fffffffe0e0) at /home/jhd/src/emacs/current/src/bytecode.c:919 #20 0x00000000005f419f in funcall_lambda (fun=10564237, nargs=1, arg_vector=0x7fffffffe0d8) at /home/jhd/src/emacs/current/src/eval.c:2957 #21 0x00000000005f3b7c in Ffuncall (nargs=2, args=0x7fffffffe0d0) at /home/jhd/src/emacs/current/src/eval.c:2838 #22 0x00000000005f3313 in call1 (fn=13767170, arg1=22794386) at /home/jhd/src/emacs/current/src/eval.c:2588 #23 0x0000000000553829 in command_loop_1 () at /home/jhd/src/emacs/current/src/keyboard.c:1557 #24 0x00000000005f000c in internal_condition_case (bfun=0x552f07 <command_loop_1>, handlers=13774770, hfun=0x5526d7 <cmd_error>) at /home/jhd/src/emacs/current/src/eval.c:1331 #25 0x0000000000552b8a in command_loop_2 (ignore=13715186) at /home/jhd/src/emacs/current/src/keyboard.c:1158 #26 0x00000000005ef48f in internal_catch (tag=13770706, func=0x552b64 <command_loop_2>, arg=13715186) at /home/jhd/src/emacs/current/src/eval.c:1097 #27 0x0000000000552b38 in command_loop () at /home/jhd/src/emacs/current/src/keyboard.c:1137 #28 0x00000000005521e2 in recursive_edit_1 () at /home/jhd/src/emacs/current/src/keyboard.c:776 #29 0x00000000005523c7 in Frecursive_edit () at /home/jhd/src/emacs/current/src/keyboard.c:840 #30 0x0000000000550373 in main (argc=3, argv=0x7fffffffe5c8) at /home/jhd/src/emacs/current/src/emacs.c:1577 Lisp Backtrace: "x-popup-menu" (0xffffcda0) "popup-menu" (0xffffd2f0) "menu-bar-open" (0xffffd850) "call-interactively" (0xffffdb80) "command-execute" (0xffffe0d8) In GNU Emacs 24.3.50.7 (x86_64-unknown-linux-gnu, GTK+ Version 3.8.4) of 2013-10-11 on f19 Bzr revision: 114621 dmantipov@yandex.ru-20131011035526-3fxo6ivvxif34bna Configured using: `configure --enable-checking --verbose CFLAGS=-g3' Important settings: value of $LC_COLLATE: C value of $LANG: sv_SE.UTF-8 value of $XMODIFIERS: @im=ibus locale-coding-system: utf-8-unix default enable-multibyte-characters: t Major mode: Lisp Interaction Minor modes in effect: tooltip-mode: t mouse-wheel-mode: t tool-bar-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t line-number-mode: t transient-mark-mode: t Recent input: ESC [ > 1 ; 3 4 0 6 ; 0 c ESC x r e p o r t - e m a c s - b u g RET Recent messages: ("./emacs") For information about GNU Emacs and the GNU system, type C-h C-a. Load-path shadows: None found. Features: (shadow sort gnus-util mail-extr emacsbug message format-spec rfc822 mml easymenu mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils xterm time-date tooltip ediff-hook vc-hooks lisp-float-type mwheel x-win x-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list newcomment lisp-mode prog-mode register page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core frame cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer nadvice loaddefs button faces cus-face macroexp files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote make-network-process dbusbind gfilenotify dynamic-setting system-font-setting font-render-setting move-toolbar gtk x-toolkit x multi-tty emacs) ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-11 5:44 ` Jan Djärv @ 2013-10-11 7:09 ` Eli Zaretskii 2013-10-11 8:10 ` Eli Zaretskii ` (2 more replies) 0 siblings, 3 replies; 44+ messages in thread From: Eli Zaretskii @ 2013-10-11 7:09 UTC (permalink / raw) To: Jan Djärv; +Cc: 15575 > From: Jan Djärv <jan.h.d@swipnet.se> > Date: Fri, 11 Oct 2013 07:44:54 +0200 > Cc: 15575@debbugs.gnu.org > > Hello. > > 10 okt 2013 kl. 21:36 skrev Eli Zaretskii <eliz@gnu.org>: > > > Can you please try the latest trunk (after reverting the patch you > > applied on my request)? I made some changes that perhaps could fix > > this. > > > > Sorry, no go. On Fedora 19, this assert triggers: > > 20591 { > 20592 struct glyph *pointers[1 + LAST_AREA]; > 20593 > 20594 /* Save glyph pointers of TO. */ > 20595 memcpy (pointers, to->glyphs, sizeof to->glyphs); > 20596 eassert (to->used[TEXT_AREA] == from->used[TEXT_AREA]); > 20597 > 20598 /* Do a structure assignment. */ > 20599 *to = *from; > 20600 > (gdb) p to->used[TEXT_AREA] > $1 = -3929 > (gdb) p from->used[TEXT_AREA] > $2 = 274 Both values are bogus. Can you give me a login on that machine, with access to a directory where trunk is built? I would like to debug this weird problem. > No, everything is stock Fedora 19, gcc 2.8.1, compiled with -g3, no optimizations, glibc 2.17. Very strange. It works flawlessly for me on fencepost.gnu.org, although with an older compiler and with GTK2 (which should not be a factor in this case). I tried both with and without optimizations. ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-11 7:09 ` Eli Zaretskii @ 2013-10-11 8:10 ` Eli Zaretskii 2013-10-11 9:28 ` Eli Zaretskii 2013-10-11 9:55 ` martin rudalics 2 siblings, 0 replies; 44+ messages in thread From: Eli Zaretskii @ 2013-10-11 8:10 UTC (permalink / raw) To: jan.h.d; +Cc: 15575 > Date: Fri, 11 Oct 2013 10:09:55 +0300 > From: Eli Zaretskii <eliz@gnu.org> > Cc: 15575@debbugs.gnu.org > > > No, everything is stock Fedora 19, gcc 2.8.1, compiled with -g3, no optimizations, glibc 2.17. > > Very strange. It works flawlessly for me on fencepost.gnu.org, > although with an older compiler and with GTK2 (which should not be a Err... if that's really is GCC 2.8.1 (and not 4.8.1, as I've initially read it), then my compiler is of course _newer_, not older. ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-11 7:09 ` Eli Zaretskii 2013-10-11 8:10 ` Eli Zaretskii @ 2013-10-11 9:28 ` Eli Zaretskii 2013-10-11 11:06 ` Eli Zaretskii 2013-10-11 11:12 ` Jan Djärv 2013-10-11 9:55 ` martin rudalics 2 siblings, 2 replies; 44+ messages in thread From: Eli Zaretskii @ 2013-10-11 9:28 UTC (permalink / raw) To: jan.h.d; +Cc: 15575 > Date: Fri, 11 Oct 2013 10:09:55 +0300 > From: Eli Zaretskii <eliz@gnu.org> > Cc: 15575@debbugs.gnu.org > > Can you give me a login on that machine, with access to a directory > where trunk is built? I would like to debug this weird problem. Sorry, no login is needed. I was blind: the reason for the crash is acutely visible in your backtrace: #4 0x000000000046dc26 in display_tty_menu_item (item_text=0xbf5224 <pure+2867940> "New Frame on Display...", width=40, face_id=15, x=0, y=24, submenu=0) at /home/jhd/src/emacs/current/src/xdisp.c:20648 ^^^^ Note that y's value is 24. Your terminal window has only 25 lines, right? I guess everyone else's, including mine, are taller. The "File" menu is longer than 24 lines, so the code is trying to write beyond the end of the frame's glyph matrix, with predictably bad results. I will fix that ASAP. ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-11 9:28 ` Eli Zaretskii @ 2013-10-11 11:06 ` Eli Zaretskii 2013-10-11 16:39 ` Jan Djärv 2013-10-11 11:12 ` Jan Djärv 1 sibling, 1 reply; 44+ messages in thread From: Eli Zaretskii @ 2013-10-11 11:06 UTC (permalink / raw) To: jan.h.d; +Cc: 15575 > Date: Fri, 11 Oct 2013 12:28:33 +0300 > From: Eli Zaretskii <eliz@gnu.org> > Cc: 15575@debbugs.gnu.org > > Sorry, no login is needed. I was blind: the reason for the crash is > acutely visible in your backtrace: > > #4 0x000000000046dc26 in display_tty_menu_item (item_text=0xbf5224 <pure+2867940> "New Frame on Display...", width=40, face_id=15, x=0, y=24, submenu=0) at /home/jhd/src/emacs/current/src/xdisp.c:20648 > ^^^^ > > Note that y's value is 24. Your terminal window has only 25 lines, > right? I guess everyone else's, including mine, are taller. The > "File" menu is longer than 24 lines, so the code is trying to write > beyond the end of the frame's glyph matrix, with predictably bad > results. > > I will fix that ASAP. Should be fixed with trunk revision 114623. Please test. ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-11 11:06 ` Eli Zaretskii @ 2013-10-11 16:39 ` Jan Djärv 2013-10-11 17:29 ` Eli Zaretskii 0 siblings, 1 reply; 44+ messages in thread From: Jan Djärv @ 2013-10-11 16:39 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 15575-done Hello. 11 okt 2013 kl. 13:06 skrev Eli Zaretskii <eliz@gnu.org>: >> Date: Fri, 11 Oct 2013 12:28:33 +0300 >> From: Eli Zaretskii <eliz@gnu.org> >> Cc: 15575@debbugs.gnu.org >> >> Sorry, no login is needed. I was blind: the reason for the crash is >> acutely visible in your backtrace: >> >> #4 0x000000000046dc26 in display_tty_menu_item (item_text=0xbf5224 <pure+2867940> "New Frame on Display...", width=40, face_id=15, x=0, y=24, submenu=0) at /home/jhd/src/emacs/current/src/xdisp.c:20648 >> ^^^^ >> >> Note that y's value is 24. Your terminal window has only 25 lines, >> right? I guess everyone else's, including mine, are taller. The >> "File" menu is longer than 24 lines, so the code is trying to write >> beyond the end of the frame's glyph matrix, with predictably bad >> results. >> >> I will fix that ASAP. > > Should be fixed with trunk revision 114623. Please test. Tested OK with a 24-line terminal window. Closing. Jan D. ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-11 16:39 ` Jan Djärv @ 2013-10-11 17:29 ` Eli Zaretskii 2013-10-11 18:53 ` Jan Djärv 0 siblings, 1 reply; 44+ messages in thread From: Eli Zaretskii @ 2013-10-11 17:29 UTC (permalink / raw) To: Jan Djärv; +Cc: 15575 > From: Jan Djärv <jan.h.d@swipnet.se> > Date: Fri, 11 Oct 2013 18:39:46 +0200 > Cc: 15575-done@debbugs.gnu.org > > >> Note that y's value is 24. Your terminal window has only 25 lines, > >> right? I guess everyone else's, including mine, are taller. The > >> "File" menu is longer than 24 lines, so the code is trying to write > >> beyond the end of the frame's glyph matrix, with predictably bad > >> results. > >> > >> I will fix that ASAP. > > > > Should be fixed with trunk revision 114623. Please test. > > Tested OK with a 24-line terminal window. Closing. Thanks, and sorry for not seeing this earlier. ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-11 17:29 ` Eli Zaretskii @ 2013-10-11 18:53 ` Jan Djärv 0 siblings, 0 replies; 44+ messages in thread From: Jan Djärv @ 2013-10-11 18:53 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 15575 Hello. 11 okt 2013 kl. 19:29 skrev Eli Zaretskii <eliz@gnu.org>: >> From: Jan Djärv <jan.h.d@swipnet.se> >> Date: Fri, 11 Oct 2013 18:39:46 +0200 >> Cc: 15575-done@debbugs.gnu.org >> >>>> Note that y's value is 24. Your terminal window has only 25 lines, >>>> right? I guess everyone else's, including mine, are taller. The >>>> "File" menu is longer than 24 lines, so the code is trying to write >>>> beyond the end of the frame's glyph matrix, with predictably bad >>>> results. >>>> >>>> I will fix that ASAP. >>> >>> Should be fixed with trunk revision 114623. Please test. >> >> Tested OK with a 24-line terminal window. Closing. > > Thanks, and sorry for not seeing this earlier. 2 days to fix is pretty quick. Jan D. ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-11 9:28 ` Eli Zaretskii 2013-10-11 11:06 ` Eli Zaretskii @ 2013-10-11 11:12 ` Jan Djärv 1 sibling, 0 replies; 44+ messages in thread From: Jan Djärv @ 2013-10-11 11:12 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 15575 Hello. 11 okt 2013 kl. 11:28 skrev Eli Zaretskii <eliz@gnu.org>: >> Date: Fri, 11 Oct 2013 10:09:55 +0300 >> From: Eli Zaretskii <eliz@gnu.org> >> Cc: 15575@debbugs.gnu.org >> >> Can you give me a login on that machine, with access to a directory >> where trunk is built? I would like to debug this weird problem. > > Sorry, no login is needed. I was blind: the reason for the crash is > acutely visible in your backtrace: > > #4 0x000000000046dc26 in display_tty_menu_item (item_text=0xbf5224 <pure+2867940> "New Frame on Display...", width=40, face_id=15, x=0, y=24, submenu=0) at /home/jhd/src/emacs/current/src/xdisp.c:20648 > ^^^^ > > Note that y's value is 24. Your terminal window has only 25 lines, > right? I guess everyone else's, including mine, are taller. The > "File" menu is longer than 24 lines, so the code is trying to write > beyond the end of the frame's glyph matrix, with predictably bad > results. > > I will fix that ASAP. Confirmed that a taller window does not crash or give rise to the screen corruptions previously mentioned. Jan D. ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-11 7:09 ` Eli Zaretskii 2013-10-11 8:10 ` Eli Zaretskii 2013-10-11 9:28 ` Eli Zaretskii @ 2013-10-11 9:55 ` martin rudalics 2013-10-11 11:09 ` Eli Zaretskii 2 siblings, 1 reply; 44+ messages in thread From: martin rudalics @ 2013-10-11 9:55 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 15575 I have a similar problem on Windows XP. Since I never work with -nw I have no idea how to debug this. Below is a translation of a backtrace made via addr2line -e "c:/emacs/trunk/src/emacs.exe" < "c:/temp/emacs_backtrace.txt" -a -p -s -f martin 0x00000000: ?? ??:0 0x00000bac: ?? ??:0 0x011e5743: w32_backtrace at w32fns.c:7965 0x011e57b6: emacs_abort at w32fns.c:7997 0x010de773: terminate_due_to_signal at emacs.c:376 0x01150a7c: die at alloc.c:6605 0x01052e96: deep_copy_glyph_row at xdisp.c:20596 0x010530df: display_tty_menu_item at xdisp.c:20648 0x010ca853: tty_menu_display at term.c:2948 0x010cbb49: tty_menu_activate at term.c:3364 0x010cc710: tty_menu_show at term.c:3741 0x0107107d: Fx_popup_menu at menu.c:1449 0x010f0160: read_char_x_menu_prompt at keyboard.c:8422 0x010e51ce: read_char at keyboard.c:2771 0x010f16dd: read_key_sequence at keyboard.c:9115 0x010e249e: command_loop_1 at keyboard.c:1431 0x0116b67e: internal_condition_case at eval.c:1331 0x010e1dd4: command_loop_2 at keyboard.c:1158 0x0116ac41: internal_catch at eval.c:1097 0x010e1d8e: command_loop at keyboard.c:1137 0x010e1545: recursive_edit_1 at keyboard.c:776 0x010e1701: Frecursive_edit at keyboard.c:840 0x010dfa9e: main at emacs.c:1577 0x010010b5: __mingw_CRTStartup at crt1.c:244 0x01001280: mainCRTStartup at crt1.c:264 0x011ac4a9: _start at unexw32.c:117 0x7c816fd3: ?? ??:0 ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-11 9:55 ` martin rudalics @ 2013-10-11 11:09 ` Eli Zaretskii 2013-10-11 11:42 ` martin rudalics 0 siblings, 1 reply; 44+ messages in thread From: Eli Zaretskii @ 2013-10-11 11:09 UTC (permalink / raw) To: martin rudalics; +Cc: 15575 > Date: Fri, 11 Oct 2013 11:55:05 +0200 > From: martin rudalics <rudalics@gmx.at> > CC: Jan Djärv <jan.h.d@swipnet.se>, > 15575@debbugs.gnu.org > > I have a similar problem on Windows XP. How tall is your cmd window? Is it 25-line tall, per chance? If so, try the latest trunk, this problem should be fixed there. > Since I never work with -nw I have no idea how to debug this. Because -nw takes control of the screen, or because you don't think you are familiar enough with the internals in the -nw case? If the former, I can tell you the tricks I use. ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-11 11:09 ` Eli Zaretskii @ 2013-10-11 11:42 ` martin rudalics 2013-10-11 11:53 ` martin rudalics 2013-10-11 14:17 ` Eli Zaretskii 0 siblings, 2 replies; 44+ messages in thread From: martin rudalics @ 2013-10-11 11:42 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 15575 > How tall is your cmd window? Is it 25-line tall, per chance? I don't remember but it's possible. > If so, > try the latest trunk, this problem should be fixed there. With latest trunk I'm not able to produce it any more so this seems to be fixed. >> Since I never work with -nw I have no idea how to debug this. > > Because -nw takes control of the screen, or because you don't think > you are familiar enough with the internals in the -nw case? > > If the former, I can tell you the tricks I use. The former. I'm used to debug emacs from another emacs but with -nw this seems impossible. And in a cmd.exe window emacs takes control of the window as you say. What do you use to get back to the debugger? A minor nitpick: When I mouse-open the Tools menu and, with that menu open, mouse-click the Emacs-Lisp menu, the Tools menu is still around. Any simple way to close all open menus when opening a new one? martin ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-11 11:42 ` martin rudalics @ 2013-10-11 11:53 ` martin rudalics 2013-10-11 12:04 ` Dani Moncayo 2013-10-11 14:20 ` Eli Zaretskii 2013-10-11 14:17 ` Eli Zaretskii 1 sibling, 2 replies; 44+ messages in thread From: martin rudalics @ 2013-10-11 11:53 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 15575 > With latest trunk I'm not able to produce it any more so this seems to > be fixed. This was premature. The last crash is practically the same as before and happened after I reenlarged the frame to full height. Not easily reproducible I presume. martin 0x011e5763: w32_backtrace at w32fns.c:7965 0x011e57d6: emacs_abort at w32fns.c:7997 0x010de793: terminate_due_to_signal at emacs.c:376 0x01150a9c: die at alloc.c:6605 0x01052e4e: deep_copy_glyph_row at xdisp.c:20596 0x010530a9: display_tty_menu_item at xdisp.c:20656 0x010ca863: tty_menu_display at term.c:2952 0x010cbb6a: tty_menu_activate at term.c:3369 0x010cc731: tty_menu_show at term.c:3746 0x01071081: Fx_popup_menu at menu.c:1449 0x010f0180: read_char_x_menu_prompt at keyboard.c:8422 0x010e51ee: read_char at keyboard.c:2771 0x010f16fd: read_key_sequence at keyboard.c:9115 0x010e2e12: read_menu_command at keyboard.c:1703 0x010cb127: read_menu_input at term.c:3157 0x010cb668: tty_menu_activate at term.c:3295 0x010cc731: tty_menu_show at term.c:3746 0x01071081: Fx_popup_menu at menu.c:1449 0x010f0180: read_char_x_menu_prompt at keyboard.c:8422 0x010e51ee: read_char at keyboard.c:2771 0x010f16fd: read_key_sequence at keyboard.c:9115 0x010e24be: command_loop_1 at keyboard.c:1431 0x0116b69e: internal_condition_case at eval.c:1331 0x010e1df4: command_loop_2 at keyboard.c:1158 0x0116ac61: internal_catch at eval.c:1097 0x010e1dae: command_loop at keyboard.c:1137 0x010e1565: recursive_edit_1 at keyboard.c:776 0x010e1721: Frecursive_edit at keyboard.c:840 0x010dfabe: main at emacs.c:1577 0x010010b5: __mingw_CRTStartup at crt1.c:244 0x01001280: mainCRTStartup at crt1.c:264 0x011ac4c9: _start at unexw32.c:117 0x7c816fd3: ?? ??:0 ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-11 11:53 ` martin rudalics @ 2013-10-11 12:04 ` Dani Moncayo 2013-10-11 14:25 ` Eli Zaretskii 2013-10-11 14:20 ` Eli Zaretskii 1 sibling, 1 reply; 44+ messages in thread From: Dani Moncayo @ 2013-10-11 12:04 UTC (permalink / raw) To: martin rudalics; +Cc: 15575 > This was premature. The last crash is practically the same as before > and happened after I reenlarged the frame to full height. Not easily > reproducible I presume. Here too: If I modify the width of the cmd console window, I get a crash the next I do anything menu-related. -- Dani Moncayo ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-11 12:04 ` Dani Moncayo @ 2013-10-11 14:25 ` Eli Zaretskii 2013-10-11 14:43 ` Dani Moncayo 0 siblings, 1 reply; 44+ messages in thread From: Eli Zaretskii @ 2013-10-11 14:25 UTC (permalink / raw) To: Dani Moncayo; +Cc: 15575 > Date: Fri, 11 Oct 2013 14:04:13 +0200 > From: Dani Moncayo <dmoncayo@gmail.com> > Cc: Eli Zaretskii <eliz@gnu.org>, 15575@debbugs.gnu.org > > > This was premature. The last crash is practically the same as before > > and happened after I reenlarged the frame to full height. Not easily > > reproducible I presume. > > Here too: If I modify the width of the cmd console window, I get a > crash the next I do anything menu-related. What exactly do you mean by that? The width of the cmd console window cannot be made smaller on Windows, at least I cannot do that here (you get a horizontal scroll bar below, but the dimensions of the console buffer are unchanged). I tried to enlarge the window by using Properties, but saw no crash. IOW, please provide a proper recipe to reproduce the problem, step by step, starting with "emacs -Q -nw". ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-11 14:25 ` Eli Zaretskii @ 2013-10-11 14:43 ` Dani Moncayo 2013-10-11 14:54 ` Eli Zaretskii 0 siblings, 1 reply; 44+ messages in thread From: Dani Moncayo @ 2013-10-11 14:43 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 15575 >> > This was premature. The last crash is practically the same as before >> > and happened after I reenlarged the frame to full height. Not easily >> > reproducible I presume. >> >> Here too: If I modify the width of the cmd console window, I get a >> crash the next I do anything menu-related. > > What exactly do you mean by that? The width of the cmd console window > cannot be made smaller on Windows, at least I cannot do that here (you > get a horizontal scroll bar below, but the dimensions of the console > buffer are unchanged). I meant just that: take the mouse pointer to the right edge of the console window and make that window a bit narrower. The horizontal scrollbar indeed appears at that moment. > I tried to enlarge the window by using > Properties, but saw no crash. > > IOW, please provide a proper recipe to reproduce the problem, step by > step, starting with "emacs -Q -nw". Sure: simply type F10 after narrowing a bit the console window. Here is the backtrace I get: ?? ??:0 ?? ??:0 w32_backtrace at w32fns.c:7965 emacs_abort at w32fns.c:7997 terminate_due_to_signal at emacs.c:376 die at alloc.c:6605 deep_copy_glyph_row at xdisp.c:20609 display_tty_menu_item at xdisp.c:20661 tty_menu_display at term.c:2948 tty_menu_activate at term.c:3300 tty_menu_show at term.c:3781 Fx_popup_menu at menu.c:1454 Ffuncall at eval.c:2792 exec_byte_code at bytecode.c:919 funcall_lambda at eval.c:3023 Ffuncall at eval.c:2838 exec_byte_code at bytecode.c:919 funcall_lambda at eval.c:3023 Ffuncall at eval.c:2838 apply1 at eval.c:2555 Fcall_interactively at callint.c:378 Ffuncall at eval.c:2796 exec_byte_code at bytecode.c:919 funcall_lambda at eval.c:2957 Ffuncall at eval.c:2838 call1 at eval.c:2588 command_loop_1 at keyboard.c:1561 internal_condition_case at eval.c:1331 command_loop_2 at keyboard.c:1162 internal_catch at eval.c:1097 command_loop at keyboard.c:1141 recursive_edit_1 at keyboard.c:780 Frecursive_edit at keyboard.c:844 main at emacs.c:1577 __mingw_CRTStartup at crt1.c:244 mainCRTStartup at crt1.c:264 _start at unexw32.c:117 ?? ??:0 ?? ??:0 ?? ??:0 -- Dani Moncayo ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-11 14:43 ` Dani Moncayo @ 2013-10-11 14:54 ` Eli Zaretskii 2013-10-11 15:02 ` Dani Moncayo 0 siblings, 1 reply; 44+ messages in thread From: Eli Zaretskii @ 2013-10-11 14:54 UTC (permalink / raw) To: Dani Moncayo; +Cc: 15575 > Date: Fri, 11 Oct 2013 16:43:35 +0200 > From: Dani Moncayo <dmoncayo@gmail.com> > Cc: martin rudalics <rudalics@gmx.at>, 15575@debbugs.gnu.org > > Sure: simply type F10 after narrowing a bit the console window. > > Here is the backtrace I get: I see no crash here, when I do that. ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-11 14:54 ` Eli Zaretskii @ 2013-10-11 15:02 ` Dani Moncayo 2013-10-11 15:44 ` Eli Zaretskii 0 siblings, 1 reply; 44+ messages in thread From: Dani Moncayo @ 2013-10-11 15:02 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 15575 On Fri, Oct 11, 2013 at 4:54 PM, Eli Zaretskii <eliz@gnu.org> wrote: >> Date: Fri, 11 Oct 2013 16:43:35 +0200 >> From: Dani Moncayo <dmoncayo@gmail.com> >> Cc: martin rudalics <rudalics@gmx.at>, 15575@debbugs.gnu.org >> >> Sure: simply type F10 after narrowing a bit the console window. >> >> Here is the backtrace I get: > > I see no crash here, when I do that. Ok. And does my backtrace give a clue? If you need more data to spot the problem, just ask for it. -- Dani Moncayo ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-11 15:02 ` Dani Moncayo @ 2013-10-11 15:44 ` Eli Zaretskii 2013-10-11 16:37 ` Dani Moncayo 0 siblings, 1 reply; 44+ messages in thread From: Eli Zaretskii @ 2013-10-11 15:44 UTC (permalink / raw) To: Dani Moncayo; +Cc: 15575 > Date: Fri, 11 Oct 2013 17:02:46 +0200 > From: Dani Moncayo <dmoncayo@gmail.com> > Cc: martin rudalics <rudalics@gmx.at>, 15575@debbugs.gnu.org > > On Fri, Oct 11, 2013 at 4:54 PM, Eli Zaretskii <eliz@gnu.org> wrote: > >> Date: Fri, 11 Oct 2013 16:43:35 +0200 > >> From: Dani Moncayo <dmoncayo@gmail.com> > >> Cc: martin rudalics <rudalics@gmx.at>, 15575@debbugs.gnu.org > >> > >> Sure: simply type F10 after narrowing a bit the console window. > >> > >> Here is the backtrace I get: > > > > I see no crash here, when I do that. > > Ok. And does my backtrace give a clue? Not really, it just says that an assertion was violated. I committed something on some blind assumption, please see if the crashes are gone. ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-11 15:44 ` Eli Zaretskii @ 2013-10-11 16:37 ` Dani Moncayo 0 siblings, 0 replies; 44+ messages in thread From: Dani Moncayo @ 2013-10-11 16:37 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 15575 > I committed something on some blind assumption, please see if the > crashes are gone. Yes, they are gone :) Thank you. -- Dani Moncayo ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-11 11:53 ` martin rudalics 2013-10-11 12:04 ` Dani Moncayo @ 2013-10-11 14:20 ` Eli Zaretskii 2013-10-15 18:27 ` martin rudalics 1 sibling, 1 reply; 44+ messages in thread From: Eli Zaretskii @ 2013-10-11 14:20 UTC (permalink / raw) To: martin rudalics; +Cc: 15575 > Date: Fri, 11 Oct 2013 13:53:14 +0200 > From: martin rudalics <rudalics@gmx.at> > CC: 15575@debbugs.gnu.org > > > With latest trunk I'm not able to produce it any more so this seems to > > be fixed. > > This was premature. The last crash is practically the same as before > and happened after I reenlarged the frame to full height. What do you mean by "reenlarged frame to full height"? > Not easily reproducible I presume. I hope it is, or at least that you will be able to tell me the values of the variables that should have been equal on line 20596 of xdisp.c, now that you know how to debug a -nw session ;-) ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-11 14:20 ` Eli Zaretskii @ 2013-10-15 18:27 ` martin rudalics 0 siblings, 0 replies; 44+ messages in thread From: martin rudalics @ 2013-10-15 18:27 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 15575 >> This was premature. The last crash is practically the same as before >> and happened after I reenlarged the frame to full height. > > What do you mean by "reenlarged frame to full height"? I enlarged the command prompt window to the full height of my frame and the Emacs frame got resized with it. I have no idea how the various terminal windows (should) behave. For example, I cannot increase the window's width. >> Not easily reproducible I presume. > > I hope it is, or at least that you will be able to tell me the values > of the variables that should have been equal on line 20596 of xdisp.c, > now that you know how to debug a -nw session ;-) It's fixed now. Thanks, martin ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-11 11:42 ` martin rudalics 2013-10-11 11:53 ` martin rudalics @ 2013-10-11 14:17 ` Eli Zaretskii 2013-10-11 18:22 ` Eli Zaretskii 2013-10-15 18:27 ` martin rudalics 1 sibling, 2 replies; 44+ messages in thread From: Eli Zaretskii @ 2013-10-11 14:17 UTC (permalink / raw) To: martin rudalics; +Cc: 15575 > Date: Fri, 11 Oct 2013 13:42:37 +0200 > From: martin rudalics <rudalics@gmx.at> > CC: jan.h.d@swipnet.se, 15575@debbugs.gnu.org > > >> Since I never work with -nw I have no idea how to debug this. > > > > Because -nw takes control of the screen, or because you don't think > > you are familiar enough with the internals in the -nw case? > > > > If the former, I can tell you the tricks I use. > > The former. I'm used to debug emacs from another emacs but with -nw > this seems impossible. And in a cmd.exe window emacs takes control of > the window as you say. You can overcome this in one of 2 ways: . start "emacs -Q -nw", then attach the debugger to it with "gdb -p PID", set any breakpoints and type "continue" . start the debugger first, then do this: (gdb) set new-console on (gdb) run -Q -nw The "set new-console on" command causes a new console to be created by GDB before it runs the program attached to that console. > What do you use to get back to the debugger? I hope the above answers also this question (which I don't fully understand). > A minor nitpick: When I mouse-open the Tools menu and, with that menu > open, mouse-click the Emacs-Lisp menu, the Tools menu is still around. > Any simple way to close all open menus when opening a new one? This is a known bug for which I have no solution, see the comments in menu-bar.el where tty-menu-navigation-map is being constructed. (The menu item you mention is put on the menu bar by a minor mode.) ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-11 14:17 ` Eli Zaretskii @ 2013-10-11 18:22 ` Eli Zaretskii 2013-10-11 18:49 ` Stefan Monnier 2013-10-15 18:27 ` martin rudalics 1 sibling, 1 reply; 44+ messages in thread From: Eli Zaretskii @ 2013-10-11 18:22 UTC (permalink / raw) To: rudalics; +Cc: 15575 > Date: Fri, 11 Oct 2013 17:17:08 +0300 > From: Eli Zaretskii <eliz@gnu.org> > Cc: 15575@debbugs.gnu.org > > > A minor nitpick: When I mouse-open the Tools menu and, with that menu > > open, mouse-click the Emacs-Lisp menu, the Tools menu is still around. > > Any simple way to close all open menus when opening a new one? > > This is a known bug for which I have no solution, see the comments in > menu-bar.el where tty-menu-navigation-map is being constructed. (The > menu item you mention is put on the menu bar by a minor mode.) Stefan suggested a solution to this, so this is now fixed. ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-11 18:22 ` Eli Zaretskii @ 2013-10-11 18:49 ` Stefan Monnier 2013-10-11 20:26 ` Eli Zaretskii 0 siblings, 1 reply; 44+ messages in thread From: Stefan Monnier @ 2013-10-11 18:49 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 15575 > Stefan suggested a solution to this, so this is now fixed. Cool, Stefan "who coudn't check whether his solution worked, because he hasn't managed to make mouse-clicks work, neither in console-with-gpm nor with xterm-mouse-mode" ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-11 18:49 ` Stefan Monnier @ 2013-10-11 20:26 ` Eli Zaretskii 0 siblings, 0 replies; 44+ messages in thread From: Eli Zaretskii @ 2013-10-11 20:26 UTC (permalink / raw) To: Stefan Monnier; +Cc: 15575 > From: Stefan Monnier <monnier@IRO.UMontreal.CA> > Cc: rudalics@gmx.at, 15575@debbugs.gnu.org > Date: Fri, 11 Oct 2013 14:49:59 -0400 > > > Stefan suggested a solution to this, so this is now fixed. > > Cool, > > > Stefan "who coudn't check whether his solution worked, because > he hasn't managed to make mouse-clicks work, neither in > console-with-gpm nor with xterm-mouse-mode" xterm-mouse is tricky -- it feeds Emacs events that don't look like mouse events at all. I will try to redefine them to get it to drop down menus when I have time. ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-11 14:17 ` Eli Zaretskii 2013-10-11 18:22 ` Eli Zaretskii @ 2013-10-15 18:27 ` martin rudalics 2013-10-15 19:01 ` Eli Zaretskii 1 sibling, 1 reply; 44+ messages in thread From: martin rudalics @ 2013-10-15 18:27 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 15575 > You can overcome this in one of 2 ways: > > . start "emacs -Q -nw", then attach the debugger to it with > "gdb -p PID", set any breakpoints and type "continue" This doesn't catch initial crashes. > . start the debugger first, then do this: > > (gdb) set new-console on > (gdb) run -Q -nw > > The "set new-console on" command causes a new console to be created by > GDB before it runs the program attached to that console. This works fine. What is the GNU/Linux equivalent of this? I have tried some of the tty commands but failed miserably. (What I want is to run an emacs -nw session from a graphical Emacs GDB window.) >> A minor nitpick: When I mouse-open the Tools menu and, with that menu >> open, mouse-click the Emacs-Lisp menu, the Tools menu is still around. >> Any simple way to close all open menus when opening a new one? > > This is a known bug for which I have no solution, see the comments in > menu-bar.el where tty-menu-navigation-map is being constructed. (The > menu item you mention is put on the menu bar by a minor mode.) It works now. Thanks, martin ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-15 18:27 ` martin rudalics @ 2013-10-15 19:01 ` Eli Zaretskii 2013-10-16 7:44 ` martin rudalics 0 siblings, 1 reply; 44+ messages in thread From: Eli Zaretskii @ 2013-10-15 19:01 UTC (permalink / raw) To: martin rudalics; +Cc: 15575 > Date: Tue, 15 Oct 2013 20:27:39 +0200 > From: martin rudalics <rudalics@gmx.at> > CC: jan.h.d@swipnet.se, 15575@debbugs.gnu.org > > > . start the debugger first, then do this: > > > > (gdb) set new-console on > > (gdb) run -Q -nw > > > > The "set new-console on" command causes a new console to be created by > > GDB before it runs the program attached to that console. > > This works fine. What is the GNU/Linux equivalent of this? Sorry, I don't understand: the above commands should work on GNU/Linux as well. Moreover, on GNU/Linux you can start Emacs as a daemon, attach a debugger, and then open a TTY frame with emacsclient. > I have tried some of the tty commands but failed miserably. Which tty commands? > (What I want is to run an emacs -nw session from a graphical Emacs > GDB window.) The above commands should work from a graphical session. ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-15 19:01 ` Eli Zaretskii @ 2013-10-16 7:44 ` martin rudalics 2013-10-16 15:21 ` Eli Zaretskii 0 siblings, 1 reply; 44+ messages in thread From: martin rudalics @ 2013-10-16 7:44 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 15575 >> > The "set new-console on" command causes a new console to be created by >> > GDB before it runs the program attached to that console. >> >> This works fine. What is the GNU/Linux equivalent of this? > > Sorry, I don't understand: the above commands should work on GNU/Linux > as well. There's no such symbol on GNU/Linux. According to http://visualgdb.com/gdbreference/commands/set_new-console this command is only supported on Windows. > Moreover, on GNU/Linux you can start Emacs as a daemon, attach a > debugger, and then open a TTY frame with emacsclient. But this won't help when Emacs crashes during startup, IIUC. >> I have tried some of the tty commands but failed miserably. > > Which tty commands? set inferior-tty show inferior-tty >> (What I want is to run an emacs -nw session from a graphical Emacs >> GDB window.) > > The above commands should work from a graphical session. Do they for you? martin ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-16 7:44 ` martin rudalics @ 2013-10-16 15:21 ` Eli Zaretskii 2013-10-16 17:48 ` martin rudalics 0 siblings, 1 reply; 44+ messages in thread From: Eli Zaretskii @ 2013-10-16 15:21 UTC (permalink / raw) To: martin rudalics; +Cc: 15575 > Date: Wed, 16 Oct 2013 09:44:10 +0200 > From: martin rudalics <rudalics@gmx.at> > CC: jan.h.d@swipnet.se, 15575@debbugs.gnu.org > > >> > The "set new-console on" command causes a new console to be created by > >> > GDB before it runs the program attached to that console. > >> > >> This works fine. What is the GNU/Linux equivalent of this? > > > > Sorry, I don't understand: the above commands should work on GNU/Linux > > as well. > > There's no such symbol on GNU/Linux. According to > > http://visualgdb.com/gdbreference/commands/set_new-console > > this command is only supported on Windows. I meant the other commands, sorry. > > Moreover, on GNU/Linux you can start Emacs as a daemon, attach a > > debugger, and then open a TTY frame with emacsclient. > > But this won't help when Emacs crashes during startup, IIUC. When Emacs crashes during startup, you should be fine running it from the same console where GDB runs. > >> I have tried some of the tty commands but failed miserably. > > > > Which tty commands? > > set inferior-tty > show inferior-tty What did you set the inferior-tty to? > >> (What I want is to run an emacs -nw session from a graphical Emacs > >> GDB window.) > > > > The above commands should work from a graphical session. > > Do they for you? Yes, but I still have no clear idea what you tried to do, exactly. So maybe we are talking about different things. ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-16 15:21 ` Eli Zaretskii @ 2013-10-16 17:48 ` martin rudalics 2013-10-16 18:34 ` Eli Zaretskii 0 siblings, 1 reply; 44+ messages in thread From: martin rudalics @ 2013-10-16 17:48 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 15575 >> > Moreover, on GNU/Linux you can start Emacs as a daemon, attach a >> > debugger, and then open a TTY frame with emacsclient. >> >> But this won't help when Emacs crashes during startup, IIUC. > > When Emacs crashes during startup, you should be fine running it from > the same console where GDB runs. But I want to run GDB from within Emacs :-( > What did you set the inferior-tty to? I did for example ... Current directory is /home/martin/emacs/trunk/src/ GNU gdb (GDB) 7.4.1-debian Copyright (C) 2012 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-linux-gnu". For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>... Reading symbols from /home/martin/emacs/trunk/src/bootstrap-emacs...done. SIGINT is used by the debugger. Are you sure you want to change it? (y or n) [answered Y; input not from terminal] DISPLAY = :0.0 TERM = dumb (gdb) tty /dev/pts/3 (gdb) show inferior-tty Terminal for future runs of program being debugged is "/dev/pts/3". (gdb) run -Q -nw Starting program: /home/martin/emacs/trunk/src/bootstrap-emacs -Q -nw [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". [New Thread 0x7fffefd46700 (LWP 4629)] [Thread 0x7ffff7fcd960 (LWP 4626) exited] (gdb) ... and it still tells me that my terminal is dumb. >> > The above commands should work from a graphical session. >> >> Do they for you? > > Yes, but I still have no clear idea what you tried to do, exactly. So > maybe we are talking about different things. I thought you meant the set new-console command. What I want is simple: Start a graphical Emacs session, within that session do M-x gdb in an Emacs source directory, and then run -Q -nw. What am I missing to make such a simple scenario work? Did anyone on GNU/Linux ever try that? martin ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-16 17:48 ` martin rudalics @ 2013-10-16 18:34 ` Eli Zaretskii 2013-10-16 18:45 ` martin rudalics 0 siblings, 1 reply; 44+ messages in thread From: Eli Zaretskii @ 2013-10-16 18:34 UTC (permalink / raw) To: martin rudalics; +Cc: 15575 > Date: Wed, 16 Oct 2013 19:48:37 +0200 > From: martin rudalics <rudalics@gmx.at> > CC: 15575@debbugs.gnu.org > > (gdb) tty /dev/pts/3 What is /dev/pts/3? It should name an existing terminal. > (gdb) show inferior-tty > Terminal for future runs of program being debugged is "/dev/pts/3". > (gdb) run -Q -nw > Starting program: /home/martin/emacs/trunk/src/bootstrap-emacs -Q -nw > [Thread debugging using libthread_db enabled] > Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". > [New Thread 0x7fffefd46700 (LWP 4629)] > [Thread 0x7ffff7fcd960 (LWP 4626) exited] > (gdb) > > ... and it still tells me that my terminal is dumb. Not sure why is dumb terminal relevant here. Anyway, AFAIK the way to do this is as follows: gdb ./emacs (gdb) tty /dev/SOMETHING (gdb) r -Q -t /dev/SOMETHING (Not sure if -t /dev/SOMETHING is necessary.) But there seems to be some bug (or feature) in Emacs: it says "emacs: Could not open file: /dev/tty" and quits. Other programs work as expected with the above recipe. Maybe some Posix guru can find out what's wrong or how to work around that. ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-16 18:34 ` Eli Zaretskii @ 2013-10-16 18:45 ` martin rudalics 0 siblings, 0 replies; 44+ messages in thread From: martin rudalics @ 2013-10-16 18:45 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 15575 >> (gdb) tty /dev/pts/3 > > What is /dev/pts/3? It should name an existing terminal. It is an existing terminal where I did tty before ... >> (gdb) show inferior-tty >> Terminal for future runs of program being debugged is "/dev/pts/3". ... and the last line confirms it because it wouldn't say that if the terminal did not exist. >> (gdb) run -Q -nw >> Starting program: /home/martin/emacs/trunk/src/bootstrap-emacs -Q -nw >> [Thread debugging using libthread_db enabled] >> Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". >> [New Thread 0x7fffefd46700 (LWP 4629)] >> [Thread 0x7ffff7fcd960 (LWP 4626) exited] >> (gdb) >> >> ... and it still tells me that my terminal is dumb. > > Not sure why is dumb terminal relevant here. That's what gdb told me. Probably because I used -nw. > Anyway, AFAIK the way to do this is as follows: > > gdb ./emacs > (gdb) tty /dev/SOMETHING > (gdb) r -Q -t /dev/SOMETHING > > (Not sure if -t /dev/SOMETHING is necessary.) > > But there seems to be some bug (or feature) in Emacs: it says "emacs: > Could not open file: /dev/tty" and quits. Same here. martin ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-10 17:35 ` Jan Djärv 2013-10-10 19:36 ` Eli Zaretskii @ 2013-10-10 20:56 ` Stefan Monnier 2013-10-10 20:59 ` Eli Zaretskii 1 sibling, 1 reply; 44+ messages in thread From: Stefan Monnier @ 2013-10-10 20:56 UTC (permalink / raw) To: Jan Djärv; +Cc: 15575 > Btw, did you compile with --enable-checking, i.e. were the 3 eassert > statements at the beginning of deep_copy_glyph_row compiled into the > program? > No, I did not. I usually don't because the checkings more often than not > trip on something that really isn't a bug. I've never caught a real error > with it. I've been running with --enable-checking for "ever". Of course, there can be lots of situations where you'd bump into cases that I will never encounter, but those should be fixed as well. So, please use --enable-checking and report the false positives so we can fix them. Stefan ^ permalink raw reply [flat|nested] 44+ messages in thread
* bug#15575: 24.3.50; New tty menus crash Emacs 2013-10-10 20:56 ` Stefan Monnier @ 2013-10-10 20:59 ` Eli Zaretskii 0 siblings, 0 replies; 44+ messages in thread From: Eli Zaretskii @ 2013-10-10 20:59 UTC (permalink / raw) To: Stefan Monnier; +Cc: 15575 > From: Stefan Monnier <monnier@iro.umontreal.ca> > Cc: Eli Zaretskii <eliz@gnu.org>, 15575@debbugs.gnu.org > Date: Thu, 10 Oct 2013 16:56:53 -0400 > > I've been running with --enable-checking for "ever". So am I, FWIW. ^ permalink raw reply [flat|nested] 44+ messages in thread
end of thread, other threads:[~2013-10-16 18:45 UTC | newest] Thread overview: 44+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2013-10-09 17:05 bug#15575: 24.3.50; New tty menus crash Emacs Jan Djärv 2013-10-09 17:41 ` Eli Zaretskii 2013-10-09 17:58 ` Jan Djärv 2013-10-09 18:17 ` Jan Djärv 2013-10-09 18:20 ` Jan Djärv 2013-10-09 19:00 ` Eli Zaretskii [not found] ` <97F9A2CA-8E08-4867-93C3-5BAE8DF80D72@swipnet.se> 2013-10-10 16:15 ` Eli Zaretskii 2013-10-10 17:35 ` Jan Djärv 2013-10-10 19:36 ` Eli Zaretskii 2013-10-11 5:44 ` Jan Djärv 2013-10-11 7:09 ` Eli Zaretskii 2013-10-11 8:10 ` Eli Zaretskii 2013-10-11 9:28 ` Eli Zaretskii 2013-10-11 11:06 ` Eli Zaretskii 2013-10-11 16:39 ` Jan Djärv 2013-10-11 17:29 ` Eli Zaretskii 2013-10-11 18:53 ` Jan Djärv 2013-10-11 11:12 ` Jan Djärv 2013-10-11 9:55 ` martin rudalics 2013-10-11 11:09 ` Eli Zaretskii 2013-10-11 11:42 ` martin rudalics 2013-10-11 11:53 ` martin rudalics 2013-10-11 12:04 ` Dani Moncayo 2013-10-11 14:25 ` Eli Zaretskii 2013-10-11 14:43 ` Dani Moncayo 2013-10-11 14:54 ` Eli Zaretskii 2013-10-11 15:02 ` Dani Moncayo 2013-10-11 15:44 ` Eli Zaretskii 2013-10-11 16:37 ` Dani Moncayo 2013-10-11 14:20 ` Eli Zaretskii 2013-10-15 18:27 ` martin rudalics 2013-10-11 14:17 ` Eli Zaretskii 2013-10-11 18:22 ` Eli Zaretskii 2013-10-11 18:49 ` Stefan Monnier 2013-10-11 20:26 ` Eli Zaretskii 2013-10-15 18:27 ` martin rudalics 2013-10-15 19:01 ` Eli Zaretskii 2013-10-16 7:44 ` martin rudalics 2013-10-16 15:21 ` Eli Zaretskii 2013-10-16 17:48 ` martin rudalics 2013-10-16 18:34 ` Eli Zaretskii 2013-10-16 18:45 ` martin rudalics 2013-10-10 20:56 ` Stefan Monnier 2013-10-10 20:59 ` Eli Zaretskii
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/emacs.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).