From 792d1e01099a854cec24d592e77872e357e39d19 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= Date: Wed, 12 Feb 2014 10:58:45 +0100 Subject: [PATCH] hlsdemux: Fix cleanup when decryption fails First unmap buffers, then unref them. And also unref the key fragment. --- ext/hls/gsthlsdemux.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/ext/hls/gsthlsdemux.c b/ext/hls/gsthlsdemux.c index bc8a877baf..7d92f7fd61 100644 --- a/ext/hls/gsthlsdemux.c +++ b/ext/hls/gsthlsdemux.c @@ -1377,14 +1377,15 @@ decrypt_error: g_set_error (err, GST_STREAM_ERROR, GST_STREAM_ERROR_DECRYPT, "Failed to decrypt fragment"); - gst_buffer_unref (key_buffer); - gst_buffer_unref (encrypted_buffer); - gst_buffer_unref (decrypted_buffer); - gst_buffer_unmap (decrypted_buffer, &decrypted_info); gst_buffer_unmap (encrypted_buffer, &encrypted_info); gst_buffer_unmap (key_buffer, &key_info); + gst_buffer_unref (key_buffer); + gst_buffer_unref (encrypted_buffer); + gst_buffer_unref (decrypted_buffer); + + g_object_unref (key_fragment); g_object_unref (encrypted_fragment); return ret; }