subtitleoverlay: return available factory CAPS instead of ANY on CAPS query
authorAndreas Frisch <fraxinas@opendreambox.org>
Sun, 2 Nov 2014 20:45:30 +0000 (21:45 +0100)
committerSebastian Dröge <sebastian@centricular.com>
Mon, 3 Nov 2014 07:20:13 +0000 (08:20 +0100)
https://bugzilla.gnome.org/show_bug.cgi?id=739536

gst/playback/gstsubtitleoverlay.c

index e5b2fea..fe1638e 100644 (file)
@@ -1778,12 +1778,15 @@ gst_subtitle_overlay_subtitle_sink_chain (GstPad * pad, GstObject * parent,
 static GstCaps *
 gst_subtitle_overlay_subtitle_sink_getcaps (GstPad * pad, GstCaps * filter)
 {
-  GstCaps *ret;
+  GstCaps *ret, *subcaps;
 
-  if (filter)
-    ret = gst_caps_ref (filter);
-  else
-    ret = gst_caps_new_any ();
+  subcaps = gst_subtitle_overlay_create_factory_caps ();
+  if (filter) {
+    ret = gst_caps_intersect_full (filter, subcaps, GST_CAPS_INTERSECT_FIRST);
+    gst_caps_unref (subcaps);
+  } else {
+    ret = subcaps;
+  }
 
   return ret;
 }