[Pythonmac-SIG] Boa OS X menubar bug (Re: wxPython apps keep crashing on me :-( )

Adriano adriano at euma.com
Tue Aug 16 00:49:41 CEST 2005


Hi Kevin,

>Hi Adriano,
>
>I'm bringing one of the Boa core developers in on this in order to 
>fill him in on the details of this bug. [...] but I see the same 
>problem in the 0.4.4 release.

Thanks so much.

>What is happening is that when Boa loads and creates an object (i.e. 
>wxMenuBar), it loads up RTTI.py and tests the various functions (at 
>least getters) that can be called on wxMenuBar using the 
>getMethodType function. In this case, it is calling 
>wxMenuBar::GetClientRect (really, wxWindow::GetClientRect), but for 
>whatever reason the wxMenuBar C++ object is not prepared for a 
>GetClientRect() call and thus crashes.
>
>I say 'for whatever reason' because I didn't go through the Boa code 
>well enough to know exactly what state the wxMenuBar is when this 
>function is being called, but my guess is just that regardless, 
>GetClientRect() on Mac doesn't expect to be called from wxMenuBar. 
>On Mac, wxMenuBar really isn't a wxWindow at all but it derives from 
>it for compatibility with other platforms.
>
>I can fix things at the wxMac/C++ level for GetClientRect (actually, 
>GetClientSize and GetClientAreaOrigin), but that won't make it into 
>wxPython until the next release.


>  However, I do have to wonder why the getters are actually being 
>called and tested. If the getter call fails somewhere in the C++ 
>code, it could lead to an assert at best, or crash at worst, for 
>anyone trying to use Boa.
>
>Thanks,

Kevin, thanks to YOU !

Ok, now I want to say a few things.

1) If you will fix the c++ side of this matter I'd be really grateful !

2) I understand that the fix will be available in the next release of 
wxPython but don't worry. I have no commitment to this project I was 
just trying to help. I think I'll try to use Boa on any Linux distro 
I could install on my machine. I hope wx stuff is more stable, there. 
As far as I could see, Boa is really nice and it is able to support 
the creation of a GUI app  well enough, for me.

3) Thanks for your higly informative words about what's going on 
inside Boa that leads to this crash.

4) If I jump the menubar phase and step in the following phase I 
could go on with the tutorial. I'm sure I'll find some other crashes 
like this. Could it help if I report about them too ?

5) I found at least a crash occurring always in the same step also in 
wxGlade. Could it help if I report about that too?

Thanks so much for your help, anyhow :-)
Bye
Adriano



More information about the Pythonmac-SIG mailing list