kicad-developers team mailing list archive
-
kicad-developers team
-
Mailing list archive
-
Message #18239
Re: hard crash with pcbnew
> On May 9, 2015, at 6:12 AM, Bernhard Stegmaier <stegmaier@xxxxxxxxxxxxx> wrote:
>
> Hi,
>
>> On 08.05.2015, at 05:22, Andy Peters <devel@xxxxxxxxx> wrote:
>>
>>
>>> On May 6, 2015, at 12:55 PM, Andy Peters <devel@xxxxxxxxx> wrote:
>>>
>>> Using Adam’s nightly OS X builds, most recently BZR 5645, pcbnew is repeatedly crashing. It happens on both my 10.9 machine and my 10.10 machine. In OpenGL mode, it seems to get confused about menus, or something. It happens if I right-click to do something. I am not exactly sure what conditions cause it. Attached is the relevant part of the bug report:
>>>
>>>
>>> Crashed Thread: 0 Dispatch queue: com.apple.main-thread
>>>
>>> Exception Type: EXC_CRASH (SIGABRT)
>>> Exception Codes: 0x0000000000000000, 0x0000000000000000
>>>
>>> Application Specific Information:
>>> *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Menu to be set as submenu is already a submenu of some menu.'
>>> abort() called
>>> terminating with uncaught exception of type NSException
>
> I also can easily reproduce this one by quickly right-clicking in OpenGL mode a second time before the context menu of the previous click has opened.
> The stack trace I get:
>
> Application Specific Information:
> *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Menu to be set as submenu is already a submenu of some menu.'
> abort() called
> terminating with uncaught exception of type NSException
>
> Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
> 0 libsystem_kernel.dylib 0x00007fff96b67282 __pthread_kill + 10
> 1 libsystem_c.dylib 0x00007fff8e7b6b73 abort + 129
> 2 libc++abi.dylib 0x00007fff96ab3a21 abort_message + 257
> 3 libc++abi.dylib 0x00007fff96adb9d1 default_terminate_handler() + 267
> 4 libobjc.A.dylib 0x00007fff9141e6c6 _objc_terminate() + 103
> 5 libc++abi.dylib 0x00007fff96ad90a1 std::__terminate(void (*)()) + 8
> 6 libc++abi.dylib 0x00007fff96ad8b30 __cxa_throw + 121
> 7 libobjc.A.dylib 0x00007fff9141a808 objc_exception_throw + 341
> 8 com.apple.CoreFoundation 0x00007fff9569642a +[NSException raise:format:arguments:] + 106
> 9 com.apple.Foundation 0x00007fff979305b9 -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] + 195
> 10 com.apple.AppKit 0x00007fff949fffcd -[NSMenuItem setSubmenu:] + 194
> 11 libwx_osx_cocoau_core-3.0.0.dylib 0x00000001094bc9e2 wxMenuCocoaImpl::InsertOrAppend(wxMenuItem*, unsigned long) + 178
> 12 libwx_osx_cocoau_core-3.0.0.dylib 0x000000010942273a wxMenu::DoInsertOrAppend(wxMenuItem*, unsigned long) + 122
> 13 libwx_osx_cocoau_core-3.0.0.dylib 0x0000000109422d49 wxMenu::DoAppend(wxMenuItem*) + 41
> 14 _pcbnew.kiface 0x0000000111b4dd5c CONTEXT_MENU::Add(CONTEXT_MENU*, wxString const&, bool) + 348
> 15 _pcbnew.kiface 0x000000011187ee78 CONDITIONAL_MENU::Generate(SELECTION&) + 264
> 16 _pcbnew.kiface 0x00000001118745d6 SELECTION_TOOL::Main(TOOL_EVENT const&) + 630
> 17 _pcbnew.kiface 0x0000000111b44d96 COROUTINE<int, TOOL_EVENT const&>::callerStub(long) + 38
>
> The exception text and the stack trace looks like some race condition when creating the context menu?
> Maybe some synchronization of these COROUTINE stuff needed when processing a previous right-click is not yet finished?
>
> This is with 5648.
I get the same thing with the same BZR.
-a
References