cocoa: Just update the OpenGL context directly if on the main thread.
diff --git a/src/video/cocoa/SDL_cocoaopengl.m b/src/video/cocoa/SDL_cocoaopengl.m
index 74e93ed..c4db256 100644
--- a/src/video/cocoa/SDL_cocoaopengl.m
+++ b/src/video/cocoa/SDL_cocoaopengl.m
@@ -66,7 +66,11 @@
int value = SDL_AtomicSet(&self->dirty, 0);
if (value > 0) {
/* We call the real underlying update here, since -[SDLOpenGLContext update] just calls us. */
- [super performSelectorOnMainThread:@selector(update) withObject:nil waitUntilDone:NO];
+ if ([NSThread isMainThread]) {
+ [super update];
+ } else {
+ [super performSelectorOnMainThread:@selector(update) withObject:nil waitUntilDone:NO];
+ }
}
}