diff options
author | Stefano Pigozzi <stefano.pigozzi@gmail.com> | 2013-08-23 12:20:25 +0200 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2013-08-23 15:43:46 +0200 |
commit | 815ad3f011b3e2755bd982930e90e0043f2d5f6b (patch) | |
tree | e40d7b72aa13fa291842f6a8228a872422ec0012 /video/out | |
parent | 69d46b1d95761ccb64acbd6422fef61bf349fbdf (diff) | |
download | mpv-815ad3f011b3e2755bd982930e90e0043f2d5f6b.tar.bz2 mpv-815ad3f011b3e2755bd982930e90e0043f2d5f6b.tar.xz |
cocoa_common: avoid locking calls when not needed
cocoa_common contains some locking calls to support video outputs that support
live resizing (at this moment only vo=opengl).
These should not be used unless the VO declares it is multithreaded by
registering the resize_redraw callback used for live resizing.
Fixes #200
Diffstat (limited to 'video/out')
-rw-r--r-- | video/out/cocoa_common.m | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/video/out/cocoa_common.m b/video/out/cocoa_common.m index 6a998c8631..0a1ae175b1 100644 --- a/video/out/cocoa_common.m +++ b/video/out/cocoa_common.m @@ -523,7 +523,7 @@ int vo_cocoa_check_events(struct vo *vo) void vo_cocoa_fullscreen(struct vo *vo) { - if (![NSThread isMainThread]) { + if (![NSThread isMainThread] && resize_callback_registered(vo)) { // This is the secondary thread, unlock since we are going to invoke a // method synchronously on the GUI thread using Cocoa. vo_cocoa_set_current_context(vo, false); @@ -535,7 +535,7 @@ void vo_cocoa_fullscreen(struct vo *vo) waitUntilDone:YES]; - if (![NSThread isMainThread]) { + if (![NSThread isMainThread] && resize_callback_registered(vo)) { // Now lock again! vo_cocoa_set_current_context(vo, true); } |