[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#12698: 24.2.50; crash on OSX when accessing top menu with mouse
From: |
Jan Djärv |
Subject: |
bug#12698: 24.2.50; crash on OSX when accessing top menu with mouse |
Date: |
Thu, 1 Nov 2012 20:54:28 +0100 |
Hello.
1 nov 2012 kl. 15:32 skrev Eli Zaretskii <eliz@gnu.org>:
>> Date: Thu, 1 Nov 2012 23:16:36 +0900
>> From: Ragga Muffin <ragga@henska.net>
>> Cc: 12698@debbugs.gnu.org
>>
>> Unfortunately I still get a crash.
>> Here's a new stack trace, with debug symbols. Hope this helps.
>
> Looks like ns_select is called recursively:
>
>> #6 0x0000000100180c87 in emacs_abort () at sysdep.c:2133
>> #7 0x00000001002fc2f2 in ns_select (nfds=9, readfds=0x7fff5fbeab10,
>> writefds=0x0, exceptfds=0x0, timeout=0x7fff5fbeaa68, sigmask=0x0) at
>> nsterm.m:3512
>> #8 0x00000001002a375f in wait_reading_process_output (time_limit=1,
>> nsecs=0, read_kbd=0, do_display=false, wait_for_cell=4328534074,
>> wait_proc=0x1029b53e0, just_wait_proc=1) at process.c:4635
>> #9 0x00000001002a1de9 in Faccept_process_output (process=4338701285,
>> seconds=4, millisec=4328534074, just_this_one=4328534122) at process.c:4025
>> [...]
>> #95 0x00000001002fc316 in ns_select (nfds=9, readfds=0x7fff5fbfe0e0,
>> writefds=0x7fff5fbfe060, exceptfds=0x0, timeout=0x7fff5fbfe038, sigmask=0x0)
>> at nsterm.m:3514
>> #96 0x00000001002a375f in wait_reading_process_output (time_limit=28,
>> nsecs=0, read_kbd=-1, do_display=true, wait_for_cell=4328534074,
>> wait_proc=0x0, just_wait_proc=0) at process.c:4635
>
> Can it handle that?
No it can't. It detects that it is called recursively and aborts.
>
> AFAIU, the second call is because updating the menu bar reads output
> of some subprocess. Does that make sense?
Ah, it is the known fact that the NS-port runs Lisp in the event loop when
menus are updated.
I think we can fix that.
Thanks for the analysis.
Jan D.