summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Thompson <sw@jkqxz.net>2017-06-16 23:18:55 +0100
committerMark Thompson <sw@jkqxz.net>2017-06-18 17:07:25 +0100
commitf434ddf48e084a7a5631e7a9dd1d9771d97e114c (patch)
tree38f08e74e93da15196d41062b78a09b9448d6a5c
parent70808859ddf4c636472b56f5ec637c4754276867 (diff)
avconv_hw: Free device on initialisation failure
Fixes CID 1412852. (cherry picked from commit c2b0bea40f1fd4399ff6184a2df4f397c0f4b3ab)
-rw-r--r--ffmpeg_hw.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/ffmpeg_hw.c b/ffmpeg_hw.c
index 5708e9af20..a4d1cada59 100644
--- a/ffmpeg_hw.c
+++ b/ffmpeg_hw.c
@@ -77,7 +77,7 @@ int hw_device_init_from_string(const char *arg, HWDevice **dev_out)
char *type_name = NULL, *name = NULL, *device = NULL;
enum AVHWDeviceType type;
HWDevice *dev, *src;
- AVBufferRef *device_ref;
+ AVBufferRef *device_ref = NULL;
int err;
const char *errmsg, *p, *q;
size_t k;
@@ -210,6 +210,7 @@ invalid:
fail:
av_log(NULL, AV_LOG_ERROR,
"Device creation failed: %d.\n", err);
+ av_buffer_unref(&device_ref);
goto done;
}