Closed wxtrac closed 13 years ago
I've landed some fixes for this in 59516. If you're still seeing errors, please do a break on _NSAutoreleaseNoPool in gdb and post the stack trace of where it is happening. It usually means we need to create an autorelease pool during some initialization step before the event loop has completely started up. After speaking with Stefan, it seems we do not want to create multiple pools during the same scope, so we need to create the pool only in the scope which is needed, not at higher levels.
went to give it a try but it looks like a reswig is necessary (likely from changes in 59515).
ImportError: dlopen(/Users/codyprecord/Desktop/devel/wxWidgets/wxPython/wx/windows.so, 2): Symbol not found: __ZN16wxNonOwnedWindow8SetShapeERK8wxRegion Referenced from: /Users/codyprecord/Desktop/devel/wxWidgets/wxPython/wx/windows.so Expected in: /Users/codyprecord/Desktop/devel/wxWidgets/wxPython/wxpy-bld/lib/libwx_osx_cocoaud-2.9.0.dylib
A reswig isn't needed in this case, doing touch src/osx_cocoa/_windows_wrap.cpp or a clean rebuild should fix things.
Ok that got me running again.
There are definitely fewer of these messages now when running the demo but still getting them else where. (Also note that when clicking on the Demo Tree now it causes an application lockup this didnt happen yesterday.)
Here is the first backtrace for the the following debug message:
2009-03-13 20:36:14.099 Python[11798:81b] *** _NSAutoreleaseNoPool(): Object 0x14313a50 of class NSMutableParagraphStyle autoreleased with no pool in place - just leaking Stack: (0x950c173f 0x94fcde32 0x919504fc 0x952aa8b8 0x952aa78c 0x952a9239 0x952b9936 0x919534f0 0x91953014 0x91952a96 0x1a35fb5 0x1a36b56 0x19c23c0 0x19e1d14 0x1a1dcc2 0x12b81525 0x3fadac 0x4846e1 0x48771d 0x41c103 0x3fadac 0x402aa7 0x3fadac 0x448a49 0x44ad69 0x3fadac 0x482577 0x48771d 0x4878d1 0x4ab031 0x4ab3cb 0x4b8bbe)
Here is one more from another call:
2009-03-13 20:41:26.801 Python[11798:81b] *** _NSAutoreleaseNoPool(): Object 0x143141a0 of class NSCFDictionary autoreleased with no pool in place - just leaking Stack: (0x950c173f 0x94fcde32 0x95f76d1c 0x91950540 0x952aa8b8 0x952aa78c 0x952a9239 0x952b9936 0x919534f0 0x91953014 0x91952a96 0x1a35fb5 0x1a36b56 0x19c23c0 0x19e1d14 0x1a1dcc2 0x12b81525 0x3fadac 0x4846e1 0x48771d 0x41c103 0x3fadac 0x402aa7 0x3fadac 0x448a49 0x44ad69 0x3fadac 0x482577 0x48771d 0x4878d1 0x4ab031 0x4ab3cb 0x4b8bbe)
And one more:
2009-03-13 20:44:04.346 Python[11798:81b] *** _NSAutoreleaseNoPool(): Object 0xa020b154 of class NSCFString autoreleased with no pool in place - just leaking Stack: (0x950c173f 0x94fcde32 0x91956a7c 0x952aa8b8 0x952a9239 0x952b96d6 0x952aa8b8 0x952aa78c 0x952aa78c 0x952a9239 0x952b96d6 0x919564e4 0x91955f8f 0x91954b31 0x91953bcd 0x919530db 0x91952a96 0x1a35fb5 0x1a36b56 0x19c23c0 0x19e1d14 0x1a1dcc2 0x12b81525 0x3fadac 0x4846e1 0x48771d 0x41c103 0x3fadac 0x402aa7 0x3fadac 0x448a49 0x44ad69 0x3fadac 0x482577 0x48771d 0x4878d1 0x4ab031 0x4ab3cb 0x4b8bbe)
There are many many more but hopefully this is a start. Let me know how verbose you want to see.
Cody
Is this something wxPython-specific or is there some way to reproduce this in the C++ code?
This can be closed now. I've been using the wxosx-cocoa build most of the time recently and haven't see any of these messages in that time.
Issue migrated from trac ticket # 10583
component: wxOSX | priority: low | resolution: fixed | keywords: memory leak
2009-03-13 14:46:44: cprecord created the issue
Was doing some testing with OSX Cocoa and there is a constant stream of warnings like this:
2009-03-12 20:22:03.222 Python[11739:613] *** _NSAutoreleaseNoPool(): Object 0x1919aea0 of class NSConcreteMutableData autoreleased with no pool in place - just leaking Stack: (0x9153973f 0x91445e32 0x92b03c61 0x1a44ec5 0x1a428b5 0x92b0329c 0x92b01d93 0x92b0212a 0x92b0212a 0x92b0212a 0x92b0212a 0x92b006e9 0x92b01543 0x92b0002b 0x92afcb4f 0x92a3d523 0x92a3d0d1 0x1a35275 0xbe7a29 0x3fadac 0x4846e1 0x48771d 0x484d9e 0x486b86 0x486b86 0x486b86 0x486b86 0x48771d 0x4878d1 0x4ab031 0x4ab3cb 0x4b8bbe)
That are sent to the console. There are so many of them that it is hard to see any other console output for errors or information.