From cc262b0923686b054b341413a96c9f16a0dc04e4 Mon Sep 17 00:00:00 2001 From: Thiago Santos Date: Fri, 25 Apr 2014 10:39:19 -0300 Subject: [PATCH] hlsdemux: fix decryption function return Correctly return the decrypted buffer when it succeeds and return NULL otherwise --- ext/hls/gsthlsdemux.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/ext/hls/gsthlsdemux.c b/ext/hls/gsthlsdemux.c index 596e6cd63c..e792b15b81 100644 --- a/ext/hls/gsthlsdemux.c +++ b/ext/hls/gsthlsdemux.c @@ -776,7 +776,7 @@ _src_chain (GstPad * pad, GstObject * parent, GstBuffer * buffer) gst_buffer_unmap (key_buffer, &key_info); gst_buffer_unref (key_buffer); - gst_object_unref (key_fragment); + g_object_unref (key_fragment); } gst_adapter_push (demux->adapter, buffer); @@ -1703,6 +1703,10 @@ gst_hls_demux_decrypt_fragment (GstHLSDemux * demux, gst_buffer_unmap (decrypted_buffer, &decrypted_info); gst_buffer_unmap (encrypted_buffer, &encrypted_info); + gst_buffer_unref (encrypted_buffer); + + return decrypted_buffer; + decrypt_error: GST_ERROR_OBJECT (demux, "Failed to decrypt fragment"); g_set_error (err, GST_STREAM_ERROR, GST_STREAM_ERROR_DECRYPT, @@ -1714,7 +1718,7 @@ decrypt_error: gst_buffer_unref (encrypted_buffer); gst_buffer_unref (decrypted_buffer); - return decrypted_buffer; + return NULL; } static void