vlc | branch: master | Felix Paul Kühne <[email protected]> | Wed Aug 22 15:26:46 2012 +0200| [9dd2f6ed46b8c4bb0399693dbb3f91d7efbfabb0] | committer: Felix Paul Kühne
macosx: fixed crash when setting up the video output AppKit could be accessed by a non-main-thread > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=9dd2f6ed46b8c4bb0399693dbb3f91d7efbfabb0 --- modules/gui/macosx/MainWindow.h | 2 +- modules/gui/macosx/MainWindow.m | 3 +-- modules/gui/macosx/intf.m | 3 ++- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/modules/gui/macosx/MainWindow.h b/modules/gui/macosx/MainWindow.h index d379ca1..89a9067 100644 --- a/modules/gui/macosx/MainWindow.h +++ b/modules/gui/macosx/MainWindow.h @@ -184,7 +184,7 @@ - (void)drawFancyGradientEffectForTimeSlider; - (id)videoView; -- (id)setupVideoView; +- (void)setupVideoView; - (void)setVideoplayEnabled; - (void)resizeWindow; - (void)setNativeVideoSize:(NSSize)size; diff --git a/modules/gui/macosx/MainWindow.m b/modules/gui/macosx/MainWindow.m index f2d0afc..0d2ea69 100644 --- a/modules/gui/macosx/MainWindow.m +++ b/modules/gui/macosx/MainWindow.m @@ -1762,7 +1762,7 @@ static VLCMainWindow *_o_sharedInstance = nil; return o_video_view; } -- (id)setupVideoView +- (void)setupVideoView { // TODO: make lion fullscreen compatible with macosx-background and !embedded-video if( var_InheritBool( VLCIntf, "macosx-background" ) && !b_nativeFullscreenMode ) @@ -1851,7 +1851,6 @@ static VLCMainWindow *_o_sharedInstance = nil; } [[o_video_view window] setAlphaValue: config_GetFloat( VLCIntf, "macosx-opaqueness" )]; - return o_video_view; } - (void)setVideoplayEnabled diff --git a/modules/gui/macosx/intf.m b/modules/gui/macosx/intf.m index 190b2ab..82f25e6 100644 --- a/modules/gui/macosx/intf.m +++ b/modules/gui/macosx/intf.m @@ -1783,7 +1783,8 @@ unsigned int CocoaKeyToVLC( unichar i_key ) - (id)getVideoViewAtPositionX: (int *)pi_x Y: (int *)pi_y withWidth: (unsigned int*)pi_width andHeight: (unsigned int*)pi_height { - id videoView = [o_mainwindow setupVideoView]; + [o_mainwindow performSelectorOnMainThread:@selector(setupVideoView) withObject:nil waitUntilDone:YES]; + id videoView = [o_mainwindow videoView]; NSRect videoRect = [videoView frame]; int i_x = (int)videoRect.origin.x; int i_y = (int)videoRect.origin.y; _______________________________________________ vlc-commits mailing list [email protected] http://mailman.videolan.org/listinfo/vlc-commits
