kicad-developers team mailing list archive
-
kicad-developers team
-
Mailing list archive
-
Message #18641
Re: OSX: Pin Table crashes Library Editor
> On Jun 14, 2015, at 12:41 PM, Bernhard Stegmaier <stegmaier@xxxxxxxxxxxxx> 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
Follow ups
References