Message ID | 20230617151848.1378-2-jamrial@gmail.com |
---|---|
State | Accepted |
Commit | 8ab706677c8198fcd3e49cb4aa311d1e47709e02 |
Headers | show |
Series | [FFmpeg-devel,1/3] avcodec/evc_frame_merge: use av_fast_realloc() | expand |
Context | Check | Description |
---|---|---|
yinshiyou/make_loongarch64 | success | Make finished |
yinshiyou/make_fate_loongarch64 | success | Make fate finished |
andriy/make_x86 | success | Make finished |
andriy/make_fate_x86 | success | Make fate finished |
diff --git a/libavcodec/evc_frame_merge_bsf.c b/libavcodec/evc_frame_merge_bsf.c index 827f114f0b..540bb63631 100644 --- a/libavcodec/evc_frame_merge_bsf.c +++ b/libavcodec/evc_frame_merge_bsf.c @@ -114,14 +114,14 @@ static int evc_frame_merge_filter(AVBSFContext *bsf, AVPacket *out) av_packet_unref(in); if (au_end_found) { - uint8_t *data = av_memdup(ctx->au_buffer.data, ctx->au_buffer.data_size); size_t data_size = ctx->au_buffer.data_size; ctx->au_buffer.data_size = 0; - if (!data) - return AVERROR(ENOMEM); + err = av_new_packet(out, data_size); + if (err < 0) + return err; - err = av_packet_from_data(out, data, data_size); + memcpy(out->data, ctx->au_buffer.data, data_size); } else err = AVERROR(EAGAIN);
This ensures the buffer is padded as required by the AVPacket API. Signed-off-by: James Almer <jamrial@gmail.com> --- libavcodec/evc_frame_merge_bsf.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)