basetransform: Only use suggested caps in buffer allocation if a size was suggested too
authorSebastian Dröge <sebastian.droege@collabora.co.uk>
Sat, 16 Jan 2010 20:52:06 +0000 (21:52 +0100)
committerSebastian Dröge <sebastian.droege@collabora.co.uk>
Sun, 17 Jan 2010 07:23:48 +0000 (08:23 +0100)
libs/gst/base/gstbasetransform.c

index 78ffc8d..a9de592 100644 (file)
@@ -1550,7 +1550,8 @@ gst_base_transform_buffer_alloc (GstPad * pad, guint64 offset, guint size,
 
     /* if we have a suggestion, pretend we got these as input */
     GST_OBJECT_LOCK (pad);
-    if ((priv->sink_suggest && !gst_caps_is_equal (caps, priv->sink_suggest))) {
+    if ((priv->size_suggest && priv->sink_suggest
+            && !gst_caps_is_equal (caps, priv->sink_suggest))) {
       sink_suggest = gst_caps_ref (priv->sink_suggest);
       size_suggest = priv->size_suggest;
       GST_DEBUG_OBJECT (trans, "have suggestion %p %" GST_PTR_FORMAT " size %u",