multiqueue: Fix hanging if shut down while handling a serialized query
authorYanpingZhang <zhangyanping210@163.com>
Fri, 3 Jan 2014 03:47:23 +0000 (11:47 +0800)
committerSebastian Dröge <sebastian@centricular.com>
Fri, 3 Jan 2014 10:15:33 +0000 (11:15 +0100)
https://bugzilla.gnome.org/show_bug.cgi?id=721253

plugins/elements/gstmultiqueue.c

index 0d976c0..b26dffc 100644 (file)
@@ -740,6 +740,9 @@ gst_multi_queue_change_state (GstElement * element, GstStateChange transition)
         sq = (GstSingleQueue *) tmp->data;
         sq->flushing = TRUE;
         g_cond_signal (&sq->turn);
+
+        sq->last_query = FALSE;
+        g_cond_signal (&sq->query_handled);
       }
       GST_MULTI_QUEUE_MUTEX_UNLOCK (mqueue);
       break;