]> git.sesse.net Git - vlc/blobdiff - modules/video_output/opengl.c
* backport of [11424]
[vlc] / modules / video_output / opengl.c
index ba0ff6d7525c495a8d57769693357efe75bd400f..336d4c66bd8ea852859fbecbc2afc78eaeae8587 100644 (file)
@@ -562,6 +562,13 @@ static void DisplayVideo( vout_thread_t *p_vout, picture_t *p_pic )
     vout_sys_t *p_sys = p_vout->p_sys;
     float f_width, f_height;
 
+    if( p_sys->p_vout->pf_lock &&
+        p_sys->p_vout->pf_lock( p_sys->p_vout ) )
+    {
+        msg_Warn( p_vout, "could not lock OpenGL provider" );
+        return;
+    }
+
     /* glTexCoord works differently with GL_TEXTURE_2D and
        GL_TEXTURE_RECTANGLE_EXT */
 #ifdef SYS_DARWIN
@@ -576,13 +583,6 @@ static void DisplayVideo( vout_thread_t *p_vout, picture_t *p_pic )
        OpenGL providers can call pf_display to force redraw. Currently,
        the OS X provider uses it to get a smooth window resizing */
 
-    if( p_sys->p_vout->pf_lock &&
-        p_sys->p_vout->pf_lock( p_sys->p_vout ) )
-    {
-        msg_Warn( p_vout, "could not lock OpenGL provider" );
-        return;
-    }
-
     glClear( GL_COLOR_BUFFER_BIT );
 
     if( p_sys->i_effect == OPENGL_EFFECT_NONE )