diff options
author | Sven Gothel <[email protected]> | 2012-09-16 13:27:06 +0200 |
---|---|---|
committer | Sven Gothel <[email protected]> | 2012-09-16 13:27:06 +0200 |
commit | e30c2c7d06847889d961d12b50e77e4dfd6e525f (patch) | |
tree | e0d280af948f52088e2b072bacf3b6b6469cf456 /make | |
parent | 33896a42dcec55d52030fae33e64fa966c67f91d (diff) |
OSX: Capture 'invalid drawable' message cause by NSOpenGLContext::setView(NULL || incomplete-view) ; Add missing [ctx release] in MyNSOpenGLLayer ; Misc
NSOpenGLContext::setView(NULL || incomplete-view) was called on 2 occasions:
[1] - MacOSXCGLContext native createContext
[2] - NSOpenGLLayer internals
For [1], we simply don't call setView(..) ourselfs in case view is NULL or incomplete (invisible)
For [2], we need to wrap the class 'MyNSOpenGLContext:NSOpenGLContext' and capture setView(NULL)
++
Add missing [ctx release] in MyNSOpenGLLayer, otherwise resource won't get dealloc'ed
+++
Misc:
- MacOSXCGLContext. contextRealized(true): set pbuffer -> ctx, otherwise 1st makeCurrent call will not catch it
- MacOSXOnscreenCGLContext: don't add ContextUpdater to invisible ProxySurface's (dummy window)
Diffstat (limited to 'make')
-rwxr-xr-x | make/scripts/tests.sh | 11 | ||||
-rw-r--r-- | make/stub_includes/opengl/macosx-window-system.h | 2 |
2 files changed, 10 insertions, 3 deletions
diff --git a/make/scripts/tests.sh b/make/scripts/tests.sh index d2e2db375..5051979d5 100755 --- a/make/scripts/tests.sh +++ b/make/scripts/tests.sh @@ -32,7 +32,13 @@ MOSX=0 MOSX_MT=0 uname -a | grep -i Darwin && MOSX=1 if [ $MOSX -eq 1 ] ; then + echo setup OSX environment vars export NSZombieEnabled=YES + export NSTraceEvents=YES + export OBJC_PRINT_EXCEPTIONS=YES + echo NSZombieEnabled $NSZombieEnabled + echo NSTraceEvents $NSTraceEvents + echo OBJC_PRINT_EXCEPTIONS $OBJC_PRINT_EXCEPTIONS MOSX_MT=1 fi @@ -224,6 +230,7 @@ function testawtswt() { #testnoawt com.jogamp.opengl.test.junit.jogl.acore.TestFloatUtil01MatrixMatrixMultNOUI $* #testnoawt com.jogamp.opengl.test.junit.jogl.acore.TestNEWTCloseX11DisplayBug565 $* #testnoawt com.jogamp.opengl.test.junit.jogl.acore.TestMainVersionGLWindowNEWT $* +#testnoawt com.jogamp.opengl.test.junit.jogl.acore.TestGLProfile00NEWT $* #testnoawt com.jogamp.opengl.test.junit.jogl.acore.TestGLProfile01NEWT $* #testnoawt com.jogamp.opengl.test.junit.jogl.acore.TestShutdownCompleteNEWT $* #testnoawt com.jogamp.opengl.test.junit.jogl.acore.TestInitConcurrentNEWT $* @@ -239,14 +246,14 @@ function testawtswt() { #testnoawt com.jogamp.opengl.test.junit.jogl.acore.TestGLContextDrawableSwitchNEWT $* #testnoawt com.jogamp.opengl.test.junit.jogl.acore.TestFBODrawableNEWT $* -testnoawt com.jogamp.opengl.test.junit.jogl.acore.TestGLAutoDrawableDelegateOnOffscrnCapsNEWT $* +#testnoawt com.jogamp.opengl.test.junit.jogl.acore.TestGLAutoDrawableDelegateOnOffscrnCapsNEWT $* #testnoawt com.jogamp.opengl.test.junit.jogl.acore.TestGLAutoDrawableGLWindowOnOffscrnCapsNEWT $* #testawt com.jogamp.opengl.test.junit.jogl.acore.TestGLAutoDrawableGLCanvasOnOffscrnCapsAWT $* #testawt com.jogamp.opengl.test.junit.jogl.acore.TestGLAutoDrawableNewtCanvasAWTOnOffscrnCapsAWT $* #testnoawt com.jogamp.opengl.test.junit.jogl.acore.TestGLAutoDrawableFactoryOffscrnCapsNEWT $* #testawt com.jogamp.opengl.test.junit.jogl.acore.TestOffscreenLayer01GLCanvasAWT $* -#testawt com.jogamp.opengl.test.junit.jogl.acore.TestOffscreenLayer02NewtCanvasAWT $* +testawt com.jogamp.opengl.test.junit.jogl.acore.TestOffscreenLayer02NewtCanvasAWT $* #testnoawt com.jogamp.opengl.test.junit.jogl.acore.TestFBOAutoDrawableFactoryNEWT $* #testnoawt com.jogamp.opengl.test.junit.jogl.acore.TestFBOOffThreadSharedContextMix2DemosES2NEWT $* diff --git a/make/stub_includes/opengl/macosx-window-system.h b/make/stub_includes/opengl/macosx-window-system.h index c627f67de..828e3c01e 100644 --- a/make/stub_includes/opengl/macosx-window-system.h +++ b/make/stub_includes/opengl/macosx-window-system.h @@ -32,7 +32,7 @@ NSView* getNSView(NSOpenGLContext* ctx); NSOpenGLContext* createContext(NSOpenGLContext* shareContext, NSView* nsView, - Bool allowIncompleteView, + Bool incompleteView, NSOpenGLPixelFormat* pixelFormat, Bool opaque, int* viewNotReady); |