mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-23 18:21:04 +00:00
libs/gst/base/gstbasetransform.c: Check the caps of the buffer returned by gst_pad_alloc_buffer() and fall back to de...
Original commit message from CVS: Patch by: Sjoerd Simons <sjoerd at luon dot net> * libs/gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc): Check the caps of the buffer returned by gst_pad_alloc_buffer() and fall back to default negotiation in the chain function if the caps are different from what was requested. Fixes bug #526768.
This commit is contained in:
parent
077450a434
commit
af64309f63
3 changed files with 18 additions and 1 deletions
10
ChangeLog
10
ChangeLog
|
@ -1,3 +1,13 @@
|
|||
2008-05-13 Sebastian Dröge <slomo@circular-chaos.org>
|
||||
|
||||
Patch by: Sjoerd Simons <sjoerd at luon dot net>
|
||||
|
||||
* libs/gst/base/gstbasetransform.c:
|
||||
(gst_base_transform_buffer_alloc):
|
||||
Check the caps of the buffer returned by gst_pad_alloc_buffer() and
|
||||
fall back to default negotiation in the chain function if the caps
|
||||
are different from what was requested. Fixes bug #526768.
|
||||
|
||||
2008-05-09 Tim-Philipp Müller <tim.muller at collabora co uk>
|
||||
|
||||
* gst/gstsegment.c:
|
||||
|
|
2
common
2
common
|
@ -1 +1 @@
|
|||
Subproject commit dbf8f3aeceb6e57de097951a670cd853b4886ad8
|
||||
Subproject commit 2d9c09df0fe4ad3f570fea9f649cfc6c4511080d
|
|
@ -1214,6 +1214,13 @@ not_configured:
|
|||
&& gst_pad_peer_accept_caps (trans->srcpad, caps)) {
|
||||
/* ...by seeing if the downstream elements can handle this */
|
||||
res = gst_pad_alloc_buffer (trans->srcpad, offset, size, caps, buf);
|
||||
|
||||
if (res == GST_FLOW_OK
|
||||
&& !gst_caps_is_equal (caps, GST_BUFFER_CAPS (*buf))) {
|
||||
/* In case downstream wants to see something different, ignore this
|
||||
* buffer and leave it to the chain function to renegotiate */
|
||||
gst_buffer_replace (buf, NULL);
|
||||
}
|
||||
} else {
|
||||
/* If not fall back on the default handler and let things be
|
||||
* renegotiated in the chain function */
|
||||
|
|
Loading…
Reference in a new issue