aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTimo Rothenpieler <timo@rothenpieler.org>2018-01-28 13:05:09 +0100
committerTimo Rothenpieler <timo@rothenpieler.org>2018-01-28 13:34:24 +0100
commit93c8720b914e7027d0e6401e6f64a9a4ce531d0c (patch)
tree7f65780e571942a3105e549fb5c19d7422059ffb
parentd36714f727026ffcdf84c21c5498ceaef862ee75 (diff)
downloadffmpeg-93c8720b914e7027d0e6401e6f64a9a4ce531d0c.tar.gz
avcodec/nvenc: also clear data pointer after unregistering a resource
Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
-rw-r--r--libavcodec/nvenc.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/libavcodec/nvenc.c b/libavcodec/nvenc.c
index 43d2549fb5..d36fa2951b 100644
--- a/libavcodec/nvenc.c
+++ b/libavcodec/nvenc.c
@@ -1493,6 +1493,7 @@ static int nvenc_find_free_reg_resource(AVCodecContext *avctx)
nv_status = p_nvenc->nvEncUnregisterResource(ctx->nvencoder, ctx->registered_frames[i].regptr);
if (nv_status != NV_ENC_SUCCESS)
return nvenc_print_error(avctx, nv_status, "Failed unregistering unused input resource");
+ ctx->registered_frames[i].ptr = 0;
ctx->registered_frames[i].regptr = NULL;
}
return i;
@@ -1751,6 +1752,7 @@ static int process_output_surface(AVCodecContext *avctx, AVPacket *pkt, NvencSur
res = nvenc_print_error(avctx, nv_status, "Failed unregistering input resource");
goto error;
}
+ ctx->registered_frames[tmpoutsurf->reg_idx].ptr = 0;
ctx->registered_frames[tmpoutsurf->reg_idx].regptr = NULL;
} else if (ctx->registered_frames[tmpoutsurf->reg_idx].mapped < 0) {
res = AVERROR_BUG;