query sink pads before querying peers of source pads in default handler
authorBenjamin Otte <otte@gnome.org>
Mon, 17 Nov 2003 01:08:00 +0000 (01:08 +0000)
committerBenjamin Otte <otte@gnome.org>
Mon, 17 Nov 2003 01:08:00 +0000 (01:08 +0000)
Original commit message from CVS:
query sink pads before querying peers of source pads in default handler

gst/gstelement.c

index aba9010..d0758bb 100644 (file)
@@ -2069,7 +2069,10 @@ gst_element_query (GstElement *element, GstQueryType type,
   if (oclass->query)
     return oclass->query (element, type, format, value);
   else {
-    GstPad *pad = gst_element_get_random_pad (element, GST_PAD_SINK);
+    GstPad *pad = gst_element_get_random_pad (element, GST_PAD_SRC);
+    if (pad)
+      return gst_pad_query (pad, type, format, value);
+    pad = gst_element_get_random_pad (element, GST_PAD_SINK);
     if (pad)
       return gst_pad_query (GST_PAD_PEER (pad), type, format, value);
   }