Explorar o código

synchronize opengl context access on osx between threads

Palana %!s(int64=11) %!d(string=hai) anos
pai
achega
b70df7607c
Modificáronse 1 ficheiros con 2 adicións e 0 borrados
  1. 2 0
      libobs-opengl/gl-cocoa.m

+ 2 - 0
libobs-opengl/gl-cocoa.m

@@ -227,12 +227,14 @@ void gl_update(device_t device)
 
 void device_entercontext(device_t device)
 {
+	CGLLockContext([device->plat->context CGLContextObj]);
 	[device->plat->context makeCurrentContext];
 }
 
 void device_leavecontext(device_t device)
 {
 	[NSOpenGLContext clearCurrentContext];
+	CGLUnlockContext([device->plat->context CGLContextObj]);
 }
 
 void device_load_swapchain(device_t device, swapchain_t swap)