Yep, that’s exactly the crash that I debugged.
It is a simple "null-pointer not checked” issue… which in this case is present 
at many places in the OS X wxWidgets code.


Regards,
Bernhard

> On 15 Jun 2015, at 18:48, Andy Peters <[email protected]> wrote:
> 
>> 
>> On Jun 14, 2015, at 12:41 PM, Bernhard Stegmaier <[email protected]> 
>> wrote:
>> 
>> Hi,
>> 
>> FYI… I guess this is only OS X related.
>> 
>> Yesterday I wanted to use the Pin Table for the first time and it always 
>> crashes the Library Editor.
>> After some debugging I am pretty sure that this is a bug in the OS X 
>> implementation of wxDataViewCtrl if using wx[V|H]SCROLL when creating it.
>> Did the Pin Table ever work for somebody on OS X (I guess it never did)?
>> 
>> I already filed a bug report for wxWidgets (still under moderation, so it 
>> doesn’t show up yet).
>> I don’t know how long this will take, so attached a fix/workaround that did 
>> it for me (for anyone interested, maybe Adam?).
>> 
>> The only possible workaround in KiCad seems to be to remove the wxVSCROLL 
>> from
>> m_Pins = new wxDataViewCtrl( this, wxID_ANY, wxDefaultPosition, wxSize( 
>> -1,-1 ), 
>> wxDV_HORIZ_RULES|wxDV_MULTIPLE|wxDV_ROW_LINES|wxDV_VERT_RULES|wxVSCROLL ); 
>> In my tests OS X doesn’t seem to need this (scroll bars are dynamically 
>> shown when needed even without this flag).
>> But, I don’t know about other platforms and this piece of code probably 
>> can’t be #ifdef’d because this is generated code from wxFormBuilder
> 
> It crashes on my Macs, both 10.10 and 10.9, using Adam’s nightlies. I just 
> fired up BZR 5694 and it crashes when you try to display the pin table.
> 
> Exception Type:        EXC_BAD_ACCESS (SIGSEGV)
> Exception Codes:       KERN_INVALID_ADDRESS at 0x0000000000000000
> 
> VM Regions Near 0:
> --> 
>    __TEXT                 000000010b438000-000000010b531000 [  996K] r-x/rwx 
> SM=COW /Applications/Kicad/kicad.app/Contents/MacOS/kicad
> 
> Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
> 0   libwx_osx_cocoau_core-3.0.0.dylib 0x000000010b971bcb 
> wxWindow::DoGetClientSize(int*, int*) const + 43
> 1   libwx_osx_cocoau_core-3.0.0.dylib 0x000000010b9703f0 
> wxWindow::MacCreateScrollBars(long) + 208
> 2   libwx_osx_cocoau_core-3.0.0.dylib 0x000000010b96fa31 
> wxWindow::Create(wxWindow*, int, wxPoint const&, wxSize const&, long, 
> wxString const&) + 289
> 3   libwx_osx_cocoau_core-3.0.0.dylib 0x000000010b9bbc5b 
> wxControl::Create(wxWindow*, int, wxPoint const&, wxSize const&, long, 
> wxValidator const&, wxString const&) + 27
> 4   libwx_osx_cocoau_adv-3.0.0.dylib  0x000000010b70aa1a 
> wxDataViewCtrl::Create(wxWindow*, int, wxPoint const&, wxSize const&, long, 
> wxValidator const&, wxString const&) + 90
> 5   _eeschema.kiface                  0x0000000116fd8bc4 
> wxDataViewCtrl::wxDataViewCtrl(wxWindow*, int, wxPoint const&, wxSize const&, 
> long, wxValidator const&, wxString const&) + 148
> 6   _eeschema.kiface                  0x0000000116fd8407 
> DIALOG_LIB_EDIT_PIN_TABLE_BASE::DIALOG_LIB_EDIT_PIN_TABLE_BASE(wxWindow*, 
> int, wxString const&, wxPoint const&, wxSize const&, long) + 439
> 7   _eeschema.kiface                  0x0000000116fd378e 
> DIALOG_LIB_EDIT_PIN_TABLE::DIALOG_LIB_EDIT_PIN_TABLE(wxWindow*, LIB_PART&) + 
> 206
> 8   _eeschema.kiface                  0x000000011704dfeb 
> LIB_EDIT_FRAME::OnOpenPinTable(wxCommandEvent&) + 59
> 9   libwx_baseu-3.0.0.dylib           0x000000010c1ea3c0 
> wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*) + 240
> 10  libwx_baseu-3.0.0.dylib           0x000000010c1eb7cb 
> wxEvtHandler::ProcessEvent(wxEvent&) + 283
> 11  _eeschema.kiface                  0x00000001171ca05c 
> EDA_BASE_FRAME::ProcessEvent(wxEvent&) + 28
> 12  libwx_baseu-3.0.0.dylib           0x000000010c1eb8c4 
> wxEvtHandler::ProcessEventLocally(wxEvent&) + 164
> 13  libwx_baseu-3.0.0.dylib           0x000000010c1eb76e 
> wxEvtHandler::ProcessEvent(wxEvent&) + 190
> 14  libwx_osx_cocoau_core-3.0.0.dylib 0x000000010bb91bf4 
> wxWindowBase::TryAfter(wxEvent&) + 228
> 15  libwx_baseu-3.0.0.dylib           0x000000010c1eb7f4 
> wxEvtHandler::ProcessEvent(wxEvent&) + 324
> 16  libwx_osx_cocoau_aui-3.0.0.dylib  0x000000010b5e9aba 
> wxAuiToolBar::OnLeftUp(wxMouseEvent&) + 810
> 17  libwx_baseu-3.0.0.dylib           0x000000010c1ea3c0 
> wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*) + 240
> 18  libwx_baseu-3.0.0.dylib           0x000000010c1eb87d 
> wxEvtHandler::ProcessEventLocally(wxEvent&) + 93
> 19  libwx_baseu-3.0.0.dylib           0x000000010c1eb76e 
> wxEvtHandler::ProcessEvent(wxEvent&) + 190
> 20  libwx_baseu-3.0.0.dylib           0x000000010c1ebb7f 
> wxEvtHandler::SafelyProcessEvent(wxEvent&) + 15
> 21  libwx_osx_cocoau_core-3.0.0.dylib 0x000000010ba568b4 
> wxWidgetCocoaImpl::DoHandleMouseEvent(NSEvent*) + 100
> 22  libwx_osx_cocoau_core-3.0.0.dylib 0x000000010ba3fd75 
> -[NSWindow(wxNSWindowSupport) WX_filterSendEvent:] + 149
> 23  libwx_osx_cocoau_core-3.0.0.dylib 0x000000010ba3fdc0 -[wxNSWindow 
> sendEvent:] + 32
> 24  com.apple.AppKit                  0x00007fff90170312 -[NSApplication 
> sendEvent:] + 2504
> 25  libwx_osx_cocoau_core-3.0.0.dylib 0x000000010b95fa48 -[wxNSApplication 
> sendEvent:] + 136
> 26  com.apple.AppKit                  0x00007fff90099c68 -[NSApplication run] 
> + 711
> 27  libwx_osx_cocoau_core-3.0.0.dylib 0x000000010ba338ae 
> wxGUIEventLoop::OSXDoRun() + 110
> 28  libwx_baseu-3.0.0.dylib           0x000000010c1b6104 
> wxCFEventLoop::DoRun() + 52
> 29  libwx_baseu-3.0.0.dylib           0x000000010c0c4075 
> wxEventLoopBase::Run() + 165
> 30  libwx_baseu-3.0.0.dylib           0x000000010c076681 
> wxAppConsoleBase::MainLoop() + 209
> 31  libwx_osx_cocoau_core-3.0.0.dylib 0x000000010b9b94ea wxApp::OnRun() + 26
> 32  org.kicad-eda.kicad               0x000000010b454009 APP_KICAD::OnRun() + 
> 25
> 33  libwx_baseu-3.0.0.dylib           0x000000010c114de7 wxEntry(int&, 
> wchar_t**) + 71
> 34  org.kicad-eda.kicad               0x000000010b453940 main + 48
> 35  org.kicad-eda.kicad               0x000000010b43da14 start + 52
> 
> 
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers 
> <https://launchpad.net/~kicad-developers>
> Post to     : [email protected] 
> <mailto:[email protected]>
> Unsubscribe : https://launchpad.net/~kicad-developers 
> <https://launchpad.net/~kicad-developers>
> More help   : https://help.launchpad.net/ListHelp 
> <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