]> git.sesse.net Git - vlc/commitdiff
libvlc_media_player: fix object leak (input thread).
authorRémi Duraffort <ivoire@videolan.org>
Mon, 17 Aug 2009 12:52:33 +0000 (14:52 +0200)
committerRémi Duraffort <ivoire@videolan.org>
Mon, 17 Aug 2009 12:52:33 +0000 (14:52 +0200)
src/control/media_player.c

index 706157e6896460227f62edf4cf7189f5ae8a67f0..85547ac515ca2d1c287fc28dd051c15e2d42e6c9 100644 (file)
@@ -1092,6 +1092,7 @@ float libvlc_media_player_get_rate(
     b_can_rewind = var_GetBool( p_input_thread, "can-rewind" );
     if( (val.i_int < 0) && !b_can_rewind )
     {
+        vlc_object_release( p_input_thread );
         libvlc_exception_raise( p_e, "invalid rate" );
         return 0.0;
     }
@@ -1241,11 +1242,14 @@ int libvlc_media_player_can_pause( libvlc_media_player_t *p_mi,
     return val.b_bool;
 }
 
-void    libvlc_media_player_next_frame( libvlc_media_player_t *p_mi, libvlc_exception_t *p_e )
+void libvlc_media_player_next_frame( libvlc_media_player_t *p_mi, libvlc_exception_t *p_e )
 {
     input_thread_t *p_input_thread = libvlc_get_input_thread ( p_mi, p_e );
     if( p_input_thread != NULL )
+    {
         var_TriggerCallback( p_input_thread, "frame-next" );
+        vlc_object_release( p_input_thread );
+    }
     else
         libvlc_exception_raise( p_e, "Input thread is NULL" );
 }