decodebin: Only emit the drain signal for the main decode chain, not any subchains
authorAndrei Sarakeev <sarakusha@gmail.com>
Tue, 7 Oct 2014 08:10:42 +0000 (12:10 +0400)
committerSebastian Dröge <sebastian@centricular.com>
Tue, 7 Oct 2014 11:48:54 +0000 (14:48 +0300)
https://bugzilla.gnome.org/show_bug.cgi?id=738064

gst/playback/gstdecodebin2.c

index 3f64b58bd14571cdfebb12d7908c755a539d20f9..fe9ad3f1e81e13ca8064fda9ea97c5e4b44d7bb1 100644 (file)
@@ -3743,7 +3743,7 @@ beach:
 
   *drained = chain->drained;
 
-  if (*drained)
+  if (*drained && chain == dbin->decode_chain)
     g_signal_emit (dbin, gst_decode_bin_signals[SIGNAL_DRAINED], 0, NULL);
 
   return handled;