tests: Fix multiqueue test for latest commits.
authorEdward Hervey <bilboed@bilboed.com>
Wed, 10 Feb 2010 13:40:17 +0000 (14:40 +0100)
committerEdward Hervey <bilboed@bilboed.com>
Wed, 10 Feb 2010 13:40:17 +0000 (14:40 +0100)
The problem lies in the fact that multiqueue will now operate somewhat
similarly to the flow aggregation logic of demuxers and therefore
will stopp whenever all downstream pads return NOT_LINKED and/or
UNEXPECTED and there's no more buffers to push.

The latest commits should not affect any regular use-case, but the bug
report will be kept open so the previous behaviour can be re-established
if needed.

Fixes #609486

tests/check/elements/multiqueue.c

index 1c7a418..b9f5ce6 100644 (file)
@@ -479,13 +479,14 @@ run_output_order_test (gint n_linked)
 
   /* Wait while the buffers are processed */
   g_mutex_lock (mutex);
-  while (eos_seen < 5) {
+  /* We wait until EOS has been pushed on all linked pads */
+  while (eos_seen < n_linked) {
     g_cond_wait (cond, mutex);
   }
   g_mutex_unlock (mutex);
 
   /* Clean up */
-  for (i = 0; i < 5; i++) {
+  for (i = 0; i < NPADS; i++) {
     GstPad *mq_input = gst_pad_get_peer (inputpads[i]);
 
     gst_pad_unlink (inputpads[i], mq_input);