diff options
author | Mark Thompson <sw@jkqxz.net> | 2018-11-25 19:14:27 +0000 |
---|---|---|
committer | Mark Thompson <sw@jkqxz.net> | 2018-11-28 00:05:09 +0000 |
commit | b9aff7a53d598a7882bfe3db449a3e5dc6543f05 (patch) | |
tree | e309e58d9b4e4a71892d1d3d99f583b444c98944 | |
parent | 8cc5107705e9d5758702075ad8f0473063f7f740 (diff) | |
download | ffmpeg-b9aff7a53d598a7882bfe3db449a3e5dc6543f05.tar.gz |
hwcontext_opencl: Only release command queue if it exists
If the frames context creation fails then the command queue reference
need not exist when uninit is called.
-rw-r--r-- | libavutil/hwcontext_opencl.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/libavutil/hwcontext_opencl.c b/libavutil/hwcontext_opencl.c index 728877553f..be71c8323e 100644 --- a/libavutil/hwcontext_opencl.c +++ b/libavutil/hwcontext_opencl.c @@ -1726,10 +1726,13 @@ static void opencl_frames_uninit(AVHWFramesContext *hwfc) av_freep(&priv->mapped_frames); #endif - cle = clReleaseCommandQueue(priv->command_queue); - if (cle != CL_SUCCESS) { - av_log(hwfc, AV_LOG_ERROR, "Failed to release frame " - "command queue: %d.\n", cle); + if (priv->command_queue) { + cle = clReleaseCommandQueue(priv->command_queue); + if (cle != CL_SUCCESS) { + av_log(hwfc, AV_LOG_ERROR, "Failed to release frame " + "command queue: %d.\n", cle); + } + priv->command_queue = NULL; } } |