summaryrefslogtreecommitdiffstats
path: root/gst
diff options
context:
space:
mode:
authorTim-Philipp Müller <tim@centricular.net>2005-11-07 10:27:00 +0000
committerTim-Philipp Müller <tim@centricular.net>2005-11-07 10:27:00 +0000
commit7eb9e37532acffc041ba8cc415fa926da09c8d7f (patch)
treee482bc833050c7419f6016674534f711754fe353 /gst
parent98d290b8641696b76f89d8b788da7e067d34a88f (diff)
gst/matroska/matroska-demux.c: Don't error out when the source pad isn't linked.
Original commit message from CVS: * gst/matroska/matroska-demux.c: (gst_matroska_demux_push_vorbis_codec_priv_data), (gst_matroska_demux_add_wvpk_header): Don't error out when the source pad isn't linked.
Diffstat (limited to 'gst')
-rw-r--r--gst/matroska/matroska-demux.c29
1 files changed, 12 insertions, 17 deletions
diff --git a/gst/matroska/matroska-demux.c b/gst/matroska/matroska-demux.c
index 96f53f32..3a363ca0 100644
--- a/gst/matroska/matroska-demux.c
+++ b/gst/matroska/matroska-demux.c
@@ -2008,28 +2008,23 @@ gst_matroska_demux_push_vorbis_codec_priv_data (GstMatroskaDemux * demux,
for (i = 0; i < 2; i++) {
length = p[i + 1];
if (gst_pad_alloc_buffer (stream->pad, GST_BUFFER_OFFSET_NONE,
- length, stream->caps, &priv) != GST_FLOW_OK) {
- return FALSE;
- }
-
- memcpy (GST_BUFFER_DATA (priv), &p[offset], length);
-
- ret = gst_pad_push (stream->pad, priv);
- if (ret != GST_FLOW_OK && ret != GST_FLOW_NOT_LINKED)
- return FALSE;
+ length, stream->caps, &priv) == GST_FLOW_OK) {
+ memcpy (GST_BUFFER_DATA (priv), &p[offset], length);
+ ret = gst_pad_push (stream->pad, priv);
+ if (ret != GST_FLOW_OK && ret != GST_FLOW_NOT_LINKED)
+ return FALSE;
+ }
offset += length;
}
length = stream->codec_priv_size - offset;
if (gst_pad_alloc_buffer (stream->pad, GST_BUFFER_OFFSET_NONE, length,
- stream->caps, &priv) != GST_FLOW_OK) {
- return FALSE;
+ stream->caps, &priv) == GST_FLOW_OK) {
+ memcpy (GST_BUFFER_DATA (priv), &p[offset], length);
+ ret = gst_pad_push (stream->pad, priv);
+ if (ret != GST_FLOW_OK && ret != GST_FLOW_NOT_LINKED)
+ return FALSE;
}
- memcpy (GST_BUFFER_DATA (priv), &p[offset], length);
- ret = gst_pad_push (stream->pad, priv);
- if (ret != GST_FLOW_OK && ret != GST_FLOW_NOT_LINKED)
- return FALSE;
-
return TRUE;
}
@@ -2072,7 +2067,7 @@ gst_matroska_demux_add_wvpk_header (GstMatroskaTrackContext * stream,
newlen = block_length + sizeof (Wavpack4Header) - 12;
if (gst_pad_alloc_buffer (stream->pad, GST_BUFFER_OFFSET_NONE, newlen,
stream->caps, &newbuf) != GST_FLOW_OK) {
- return FALSE;
+ return TRUE; /* not an error, pad might not be linked */
}
data = GST_BUFFER_DATA (newbuf);