summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--gst/monoscope/gstmonoscope.c8
2 files changed, 8 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index e8f3f1f9..c56b80d7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
2006-08-22 Tim-Philipp Müller <tim at centricular dot net>
+ * gst/monoscope/gstmonoscope.c: (gst_monoscope_chain):
+ Don't unref buffers of which we've already given away
+ ownership to the adapter.
+
+2006-08-22 Tim-Philipp Müller <tim at centricular dot net>
+
* ext/speex/gstspeexdec.c: (speex_dec_chain_parse_comments):
Make metadata extraction actually work.
diff --git a/gst/monoscope/gstmonoscope.c b/gst/monoscope/gstmonoscope.c
index 573b5bff..9d84cd91 100644
--- a/gst/monoscope/gstmonoscope.c
+++ b/gst/monoscope/gstmonoscope.c
@@ -345,10 +345,8 @@ gst_monoscope_chain (GstPad * pad, GstBuffer * inbuf)
/* do negotiation if not done yet, so ->spf etc. is set */
if (GST_PAD_CAPS (monoscope->srcpad) == NULL) {
flow_ret = get_buffer (monoscope, &outbuf);
- if (flow_ret != GST_FLOW_OK) {
- gst_buffer_unref (inbuf);
+ if (flow_ret != GST_FLOW_OK)
goto out;
- }
gst_buffer_unref (outbuf);
outbuf = NULL;
}
@@ -401,10 +399,8 @@ gst_monoscope_chain (GstPad * pad, GstBuffer * inbuf)
}
flow_ret = get_buffer (monoscope, &outbuf);
- if (flow_ret != GST_FLOW_OK) {
- gst_buffer_unref (inbuf);
+ if (flow_ret != GST_FLOW_OK)
goto out;
- }
memcpy (GST_BUFFER_DATA (outbuf), pixels, monoscope->outsize);