From 79b5e89015eadae378152a9d23ab9d3bf3b98b7a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= Date: Thu, 8 Sep 2011 13:40:06 +0200 Subject: [PATCH] pad: Print a g_warning() if pad accept caps that are not a subset of its caps In 0.11 only subsets are supported again as documented instead of also allowing non-empty intersections. --- gst/gstpad.c | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gst/gstpad.c b/gst/gstpad.c index 6c1ef51944..4c0b8e9074 100644 --- a/gst/gstpad.c +++ b/gst/gstpad.c @@ -2610,6 +2610,27 @@ gst_pad_accept_caps (GstPad * pad, GstCaps * caps) result = gst_pad_acceptcaps_default (pad, caps); GST_DEBUG_OBJECT (pad, "default acceptcaps returned %d", result); } + +#ifndef G_DISABLE_ASSERT + { + GstCaps *padcaps; + + padcaps = gst_pad_get_caps_reffed (pad); + if (!gst_caps_is_subset (caps, padcaps)) { + gchar *padcaps_str, *caps_str; + + padcaps_str = gst_caps_to_string (padcaps); + caps_str = gst_caps_to_string (caps); + g_warning ("pad %s:%s accepted caps %s although " + "they are not a subset of its caps %s", + GST_DEBUG_PAD_NAME (pad), caps_str, padcaps_str); + g_free (padcaps_str); + g_free (caps_str); + } + gst_caps_unref (padcaps); + } +#endif + return result; is_same_caps: