From c63ecb2b897439cb4e39ddf39e97d29cd45c8d97 Mon Sep 17 00:00:00 2001 From: Lasse Laukkanen Date: Thu, 16 Apr 2009 17:32:03 +0300 Subject: [PATCH] output-selector: keep ref to buffer for resending only if explicitly requested --- plugins/elements/gstoutputselector.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/plugins/elements/gstoutputselector.c b/plugins/elements/gstoutputselector.c index bf354a740a..06443cfb6c 100644 --- a/plugins/elements/gstoutputselector.c +++ b/plugins/elements/gstoutputselector.c @@ -388,11 +388,13 @@ gst_output_selector_chain (GstPad * pad, GstBuffer * buf) /* Do the switch */ gst_output_selector_switch (osel); } - - /* Keep reference to latest buffer to resend it after switch */ - if (osel->latest_buffer) - gst_buffer_unref (osel->latest_buffer); - osel->latest_buffer = gst_buffer_ref (buf); + + if (osel->resend_latest) { + /* Keep reference to latest buffer to resend it after switch */ + if (osel->latest_buffer) + gst_buffer_unref (osel->latest_buffer); + osel->latest_buffer = gst_buffer_ref (buf); + } /* Keep track of last stop and use it in NEWSEGMENT start after switching to a new src pad */