diff --git a/gst/aacparse/gstbaseparse.c b/gst/aacparse/gstbaseparse.c index 5a256a0a6c..026b13417b 100644 --- a/gst/aacparse/gstbaseparse.c +++ b/gst/aacparse/gstbaseparse.c @@ -1739,5 +1739,5 @@ gst_base_parse_sink_setcaps (GstPad * pad, GstCaps * caps) res = klass->set_sink_caps (parse, caps); parse->negotiated = res; - return gst_pad_set_caps (pad, caps); + return res && gst_pad_set_caps (pad, caps); } diff --git a/gst/amrparse/gstbaseparse.c b/gst/amrparse/gstbaseparse.c index cd17063680..ad96378565 100644 --- a/gst/amrparse/gstbaseparse.c +++ b/gst/amrparse/gstbaseparse.c @@ -1739,5 +1739,5 @@ gst_base_parse_sink_setcaps (GstPad * pad, GstCaps * caps) res = klass->set_sink_caps (parse, caps); parse->negotiated = res; - return gst_pad_set_caps (pad, caps); + return res && gst_pad_set_caps (pad, caps); } diff --git a/gst/flacparse/gstbaseparse.c b/gst/flacparse/gstbaseparse.c index 4d28d65f92..85fb8d711f 100644 --- a/gst/flacparse/gstbaseparse.c +++ b/gst/flacparse/gstbaseparse.c @@ -1969,5 +1969,5 @@ gst_base_parse_sink_setcaps (GstPad * pad, GstCaps * caps) res = klass->set_sink_caps (parse, caps); parse->negotiated = res; - return gst_pad_set_caps (pad, caps); + return res && gst_pad_set_caps (pad, caps); }