* 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
* 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 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
* 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 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: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 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 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 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 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 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 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: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 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 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 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: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 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
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).