diff options
author | Anton Khirnov <anton@khirnov.net> | 2017-07-01 11:32:56 +0200 |
---|---|---|
committer | Anton Khirnov <anton@khirnov.net> | 2017-07-24 11:45:24 +0200 |
commit | 5cf96d4b68ea496a149d1ac4711fcdc73b0fe0fa (patch) | |
tree | cb74e1c4d03ac92edcc8a1fdbb209f6cd86a67b1 | |
parent | 2b1324bd167553f49736e4eaa94f96da9982925e (diff) |
decode: avoid leaks on failure in ff_get_buffer()
If the get_buffer() call fails, the frame might have some side data
already set. Make sure it gets freed.
-rw-r--r-- | libavcodec/decode.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/libavcodec/decode.c b/libavcodec/decode.c index 175a6fae4c..89a6d344c1 100644 --- a/libavcodec/decode.c +++ b/libavcodec/decode.c @@ -1154,6 +1154,9 @@ end: frame->height = avctx->height; } + if (ret < 0) + av_frame_unref(frame); + return ret; } |