hlsdemux: Fix cleanup when decryption fails

First unmap buffers, then unref them. And also unref the
key fragment.
This commit is contained in:
Sebastian Dröge 2014-02-12 10:58:45 +01:00
parent f3464e01bb
commit 792d1e0109

View file

@ -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;
}