aggregator: don't leak gap buffer when out of segment
authorMatthew Waters <matthew@centricular.com>
Thu, 21 Mar 2019 07:55:16 +0000 (18:55 +1100)
committerMatthew Waters <matthew@centricular.com>
Thu, 21 Mar 2019 08:18:46 +0000 (19:18 +1100)
libs/gst/base/gstaggregator.c

index bc8c05f..0acd8a2 100644 (file)
@@ -1471,7 +1471,6 @@ gst_aggregator_default_sink_event (GstAggregator * self,
       GstBuffer *gapbuf;
 
       gst_event_parse_gap (event, &pts, &duration);
-      gapbuf = gst_buffer_new ();
 
       if (GST_CLOCK_TIME_IS_VALID (duration))
         endpts = pts + duration;
@@ -1493,6 +1492,7 @@ gst_aggregator_default_sink_event (GstAggregator * self,
       else
         duration = GST_CLOCK_TIME_NONE;
 
+      gapbuf = gst_buffer_new ();
       GST_BUFFER_PTS (gapbuf) = pts;
       GST_BUFFER_DURATION (gapbuf) = duration;
       GST_BUFFER_FLAG_SET (gapbuf, GST_BUFFER_FLAG_GAP);