[FFmpeg-cvslog] avcodec/nvenc: also clear data pointer after unregistering a resource
Timo Rothenpieler
git at videolan.org
Sun Jan 28 14:14:13 EET 2018
ffmpeg | branch: master | Timo Rothenpieler <timo at rothenpieler.org> | Sun Jan 28 13:05:09 2018 +0100| [932037c6bb6b41a24e75b031426844a2e6472a74] | committer: Timo Rothenpieler
avcodec/nvenc: also clear data pointer after unregistering a resource
Signed-off-by: Timo Rothenpieler <timo at rothenpieler.org>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=932037c6bb6b41a24e75b031426844a2e6472a74
---
libavcodec/nvenc.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/libavcodec/nvenc.c b/libavcodec/nvenc.c
index 7038a49d90..39c3aa1fbb 100644
--- a/libavcodec/nvenc.c
+++ b/libavcodec/nvenc.c
@@ -1540,6 +1540,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 = NULL;
ctx->registered_frames[i].regptr = NULL;
}
return i;
@@ -1810,6 +1811,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 = NULL;
ctx->registered_frames[tmpoutsurf->reg_idx].regptr = NULL;
} else if (ctx->registered_frames[tmpoutsurf->reg_idx].mapped < 0) {
res = AVERROR_BUG;
More information about the ffmpeg-cvslog
mailing list