]> git.sesse.net Git - vlc/commitdiff
Core: Closed Captions memleak
authorDerk-Jan Hartman <hartman@videolan.org>
Tue, 2 Jun 2009 13:35:14 +0000 (15:35 +0200)
committerDerk-Jan Hartman <hartman@videolan.org>
Tue, 2 Jun 2009 13:36:10 +0000 (15:36 +0200)
src/input/decoder.c

index f4789d553aa0c7ed18ba34c2bdfb8faa0df39e13..58e11fd4c71d9111c68439e5b6187135c38ae2d1 100644 (file)
@@ -1253,6 +1253,7 @@ static void DecoderGetCc( decoder_t *p_dec, decoder_t *p_dec_cc )
     decoder_owner_sys_t *p_owner = p_dec->p_owner;
     block_t *p_cc;
     bool pb_present[4];
+    bool b_processed = false;
     int i;
     int i_cc_decoder;
 
@@ -1284,8 +1285,12 @@ static void DecoderGetCc( decoder_t *p_dec, decoder_t *p_dec_cc )
         else
             DecoderProcess( p_owner->cc.pp_decoder[i], p_cc );
         i_cc_decoder--;
+        b_processed = true;
     }
     vlc_mutex_unlock( &p_owner->lock );
+
+    if( !b_processed )
+        block_Release( p_cc );
 }
 
 static void DecoderPlayVideo( decoder_t *p_dec, picture_t *p_picture,