]> git.sesse.net Git - vlc/commitdiff
Remove recursive/deadlocking calls in Qt4 embedded video (refs #2136).
authorRémi Denis-Courmont <rdenis@simphalempin.com>
Mon, 20 Oct 2008 18:49:19 +0000 (21:49 +0300)
committerRémi Denis-Courmont <rdenis@simphalempin.com>
Mon, 20 Oct 2008 19:22:00 +0000 (22:22 +0300)
The vout code invokes the Qt4 video widget through the Qt4 window
submodule. Hence, the video widget cannot call the vout window code.
This is where the embedded video crashes seem to come from.
Unfortunately, this commit trades the deadlock (on 1.0) or the crash
(on 0.9) for an assertion failure.

modules/gui/qt4/components/interface_widgets.cpp

index 0136648110cbd44648bb641cceb2b9ed3c34ab96..cddd823c23e053b6552fd9b06510cccd62b8c349 100644 (file)
@@ -106,13 +106,10 @@ void VideoWidget::paintEvent(QPaintEvent *ev)
 #endif
 }
 
-/* Kill the vout at Destruction */
 VideoWidget::~VideoWidget()
 {
-    if( !p_vout )
-        return;
-    if( vout_Control( p_vout, VOUT_CLOSE ) != VLC_SUCCESS )
-        vout_Control( p_vout, VOUT_REPARENT );
+    /* Ensure we are not leaking the video output. This would crash. */
+    assert( !p_vout );
 }
 
 /**