Crash on SetStatusBar()

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Crash on SetStatusBar()

Ed Leafe-2
I'm making slow progress on getting Dabo working. I'm at the point where the initial frame and menu have been created and the app's MainLoop is running. In the initialization of the main frame, I use a CallAfter() to invoke the method that creates the frame's StatusBar. It consistently crashes on the call to SetStatusBar().

The entire crash dump is at https://pastebin.com/dcEfu3tc, but here is the info at the top:

Process:               Python [29375]
Path:                  /Library/Frameworks/Python.framework/Versions/3.7/Resources/Python.app/Contents/MacOS/Python
Identifier:            org.python.python
Version:               3.7.2 (3.7.2)
Code Type:             X86-64 (Native)
Parent Process:        bash [3647]
Responsible:           Python [29375]
User ID:               501

Date/Time:             2019-01-28 18:22:08.575 -0600
OS Version:            Mac OS X 10.14.2 (18C54)
Report Version:        12
Anonymous UUID:        B41278DA-B6CD-1053-61D0-51246DAB08C9

Sleep/Wake UUID:       0DDD93FA-D84B-4FA8-BCBD-4709F93A7798

Time Awake Since Boot: 150000 seconds
Time Since Wake:       38000 seconds

System Integrity Protection: enabled

Crashed Thread:        0  Dispatch queue: com.apple.main-thread

Exception Type:        EXC_BAD_ACCESS (SIGSEGV)
Exception Codes:       KERN_INVALID_ADDRESS at 0x0000000000000000
Exception Note:        EXC_CORPSE_NOTIFY

Termination Signal:    Segmentation fault: 11
Termination Reason:    Namespace SIGNAL, Code 0xb
Terminating Process:   exc handler [29375]

VM Regions Near 0:
--> 
    __TEXT                 000000010d41e000-000000010d41f000 [    4K] r-x/rwx SM=COW  /Library/Frameworks/Python.framework/Versions/3.7/Resources/Python.app/Contents/MacOS/Python

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   libwx_osx_cocoau_core-3.0.0.4.0.dylib	0x000000010ecf5de8 wxWindow::DoGetPosition(int*, int*) const + 40
1   _core.cpython-37m-darwin.so   	0x000000010e23eb53 sipwxStatusBar::DoGetPosition(int*, int*) const + 115
2   libwx_osx_cocoau_core-3.0.0.4.0.dylib	0x000000010ecf6f4d wxWindow::DoSetSize(int, int, int, int, int) + 61
3   _core.cpython-37m-darwin.so   	0x000000010e23e9c8 sipwxStatusBar::DoSetSize(int, int, int, int, int) + 152
4   libwx_osx_cocoau_core-3.0.0.4.0.dylib	0x000000010ed4d91d wxFrame::PositionStatusBar() + 93
5   libwx_osx_cocoau_core-3.0.0.4.0.dylib	0x000000010ee2f0e7 wxFrameBase::SetStatusBar(wxStatusBar*) + 55
6   _core.cpython-37m-darwin.so   	0x000000010e029c49 meth_wxFrame_SetStatusBar(_object*, _object*, _object*) + 153
7   org.python.python             	0x000000010d44485d _PyMethodDef_RawFastCallKeywords + 685
8   org.python.python             	0x000000010d443cca _PyCFunction_FastCallKeywords + 42
9   org.python.python             	0x000000010d502804 call_function + 724

Any ideas as to what's wrong, or how I could debug further?

-- Ed 

--
You received this message because you are subscribed to the Google Groups "wxPython-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
For more options, visit https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Crash on SetStatusBar()

Robin Dunn

On Monday, January 28, 2019 at 4:33:13 PM UTC-8, Ed Leafe wrote:
I'm making slow progress on getting Dabo working. I'm at the point where the initial frame and menu have been created and the app's MainLoop is running. In the initialization of the main frame, I use a CallAfter() to invoke the method that creates the frame's StatusBar. It consistently crashes on the call to SetStatusBar().
 
Any ideas as to what's wrong, or how I could debug further?


No solid ideas, but I think I would try to delay the target of the CallAfter by switching to CallLater, just to see if the timing of the startup sequence is having some effect on the problem. For example, if there is something that results in a wx.Yield or similar nested event loop before the real MainLoop starts up, and the CallAfter is being invoked there, then perhaps something is in an inconsistent state and is not ready to do the things that are done when the statusbar is added.


--
Robin

--
You received this message because you are subscribed to the Google Groups "wxPython-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
For more options, visit https://groups.google.com/d/optout.