summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Dröge <sebastian@centricular.com>2014-02-14 12:31:29 +0100
committerSebastian Dröge <sebastian@centricular.com>2014-02-14 12:53:56 +0100
commitf80874e57b32ba7f13a1f2ecee750ffd1ce91c94 (patch)
tree6069dd40be8d51d5d8c475ecff769b12f3335107
parent8245592c90be5b25872a61c70a46d47d1dd7e37b (diff)
downloadgstreamer-plugins-bad-f80874e57b32ba7f13a1f2ecee750ffd1ce91c94.tar.gz
amcvideodec: Release buffer to Android if allocating output failed
-rw-r--r--sys/androidmedia/gstamcvideodec.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/sys/androidmedia/gstamcvideodec.c b/sys/androidmedia/gstamcvideodec.c
index 8ae81e5c4..7567996fb 100644
--- a/sys/androidmedia/gstamcvideodec.c
+++ b/sys/androidmedia/gstamcvideodec.c
@@ -1185,6 +1185,9 @@ retry:
if ((flow_ret = gst_video_decoder_allocate_output_frame (GST_VIDEO_DECODER
(self), frame)) != GST_FLOW_OK) {
GST_ERROR_OBJECT (self, "Failed to allocate buffer");
+ if (!gst_amc_codec_release_output_buffer (self->codec, idx))
+ GST_ERROR_OBJECT (self, "Failed to release output buffer index %d",
+ idx);
goto flow_error;
}