summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThiago Santos <ts.santos@sisa.samsung.com>2014-06-27 16:58:47 -0300
committerThiago Santos <ts.santos@sisa.samsung.com>2014-06-27 16:59:58 -0300
commitc2ebc2349fbced67fe8f7dfe7b8257e3c06ffa93 (patch)
tree9ab599a3d14cc85eb3ce9e0854ca09a740236706
parente6244874aba326e2ad5fce0d061237d104b6a6f4 (diff)
downloadgstreamer-plugins-bad-c2ebc2349fbced67fe8f7dfe7b8257e3c06ffa93.tar.gz
kateenc: fix segment event leak
gst_event_replace increments the refcount
-rw-r--r--ext/kate/gstkateenc.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/ext/kate/gstkateenc.c b/ext/kate/gstkateenc.c
index 2e53b09a5..89f5f8502 100644
--- a/ext/kate/gstkateenc.c
+++ b/ext/kate/gstkateenc.c
@@ -1227,7 +1227,7 @@ gst_kate_enc_sink_event (GstPad * pad, GstObject * parent, GstEvent * event)
gst_event_unref (event);
break;
}
- case GST_EVENT_SEGMENT: {
+ case GST_EVENT_SEGMENT:{
GstSegment seg;
GST_LOG_OBJECT (ke, "Got newsegment event");
@@ -1235,7 +1235,9 @@ gst_kate_enc_sink_event (GstPad * pad, GstObject * parent, GstEvent * event)
gst_event_copy_segment (event, &seg);
if (!ke->headers_sent) {
- gst_event_replace (&ke->pending_segment, event);
+ if (ke->pending_segment)
+ gst_event_unref (ke->pending_segment);
+ ke->pending_segment = event;
event = NULL;
}