Hi Orson,

if you talk about the “onrightclick.cpp” fix in 5648, then I think this one 
only would address the other problem reported by Andy (if at all, that was just 
a guess of mine):
<<<
NSInvalidArgumentException,
reason: ‘Unlocking Focus on wrong view (<wxNSView:0x60800366fc0>), expected 
<wxNSButton: 0x608000563180>’
abort() called
terminating with uncaught exception of type NSException
>>>

The still open
>>> *** 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

>> 

is in my opinion a race condition resp. synchronisation problem of the 
COROUTINE stuff… at least in the “click second time before context menu had 
opened” case.


Regards,
Bernhard


> On 12 May 2015, at 09:24, Maciej Sumiński <[email protected]> wrote:
> 
> Hi Andy,
> 
> Have you upgraded source code recently (revision >=5648)? Jean-Pierre
> has committed a potential fix for the problem.
> 
> Regards,
> Orson
> 
> On 05/12/2015 08:37 AM, Andy Peters wrote:
>> 
>>> On May 6, 2015, at 12:55 PM, Andy Peters <[email protected]> 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
>> 
>> OK, I have come up with a sequence that will kill pcbnew dead every time. It 
>> happens with my builds, it happens with the nightlies.
>> 
>> In the openGL canvas, select a footprint. Either left-click on it so it is 
>> highlighted, or right-click on it to bring up the context menu. Either 
>> select something from the context menu, or click the canvas to clear the 
>> selection, doesn’t matter. Then right-click on any footprint or element in 
>> the design.
>> 
>> Bang — pcbnew will crash with the “Menu to be set as submenu is already a 
>> submenu of some menu.” 
>> 
>> The dispatch queue for the thread that crashes is here:
>> 
>> Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
>> 0   libsystem_kernel.dylib        0x00007fff918e5866 __pthread_kill + 10
>> 1   libsystem_pthread.dylib       0x00007fff8baca35c pthread_kill + 92
>> 2   libsystem_c.dylib             0x00007fff88eb6b1a abort + 125
>> 3   libc++abi.dylib               0x00007fff92228f31 abort_message + 257
>> 4   libc++abi.dylib               0x00007fff9224e952 
>> default_terminate_handler() + 264
>> 5   libobjc.A.dylib               0x00007fff9200c30d _objc_terminate() + 103
>> 6   libc++abi.dylib               0x00007fff9224c1d1 std::__terminate(void 
>> (*)()) + 8
>> 7   libc++abi.dylib               0x00007fff9224bc5b __cxa_throw + 124
>> 8   libobjc.A.dylib               0x00007fff9200bfa1 objc_exception_throw + 
>> 343
>> 9   com.apple.CoreFoundation      0x00007fff8f6b7038 +[NSException 
>> raise:format:arguments:] + 104
>> 10  com.apple.Foundation          0x00007fff8ef25361 -[NSAssertionHandler 
>> handleFailureInMethod:object:file:lineNumber:description:] + 189
>> 11  com.apple.AppKit              0x00007fff95f17912 -[NSMenuItem 
>> setSubmenu:] + 203
>> 12  libwx_osx_cocoau_core-3.0.0.dylib 0x000000010d608d5a 
>> wxMenuCocoaImpl::InsertOrAppend(wxMenuItem*, unsigned long) + 202
>> 13  libwx_osx_cocoau_core-3.0.0.dylib 0x000000010d560f6a 
>> wxMenu::DoInsertOrAppend(wxMenuItem*, unsigned long) + 122
>> 14  libwx_osx_cocoau_core-3.0.0.dylib 0x000000010d5615c9 
>> wxMenu::DoAppend(wxMenuItem*) + 41
>> 15  _pcbnew.kiface                0x00000001137a8f17 
>> CONTEXT_MENU::Add(CONTEXT_MENU*, wxString const&, bool) + 423
>> 16  _pcbnew.kiface                0x00000001131f48b4 
>> CONDITIONAL_MENU::Generate(SELECTION&) + 212
>> 17  _pcbnew.kiface                0x00000001131ea6db 
>> SELECTION_TOOL::Main(TOOL_EVENT const&) + 571
>> 18  _pcbnew.kiface                0x000000011379ec46 COROUTINE<int, 
>> TOOL_EVENT const&>::callerStub(long) + 38
>> 19  _pcbnew.kiface                0x00000001138da537 make_fcontext + 55
>> 
>> so basically what I think is happening is that the previous context menu 
>> hasn’t been “released.” This is where my application-programming fu is very 
>> thin.
>> 
>> -a
>> _______________________________________________
>> Mailing list: https://launchpad.net/~kicad-developers
>> Post to     : [email protected]
>> Unsubscribe : https://launchpad.net/~kicad-developers
>> More help   : https://help.launchpad.net/ListHelp
>> 
> 
> 
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to     : [email protected]
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help   : https://help.launchpad.net/ListHelp


_______________________________________________
Mailing list: https://launchpad.net/~kicad-developers
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~kicad-developers
More help   : https://help.launchpad.net/ListHelp

Reply via email to