aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJames Almer <jamrial@gmail.com>2023-06-16 09:57:25 -0300
committerJames Almer <jamrial@gmail.com>2023-06-19 12:57:31 -0300
commit8ab706677c8198fcd3e49cb4aa311d1e47709e02 (patch)
tree45811143cad8aec29c329d268605b17414c8ade3
parent96fc1927330b03a7674f9376f19565609678f48a (diff)
downloadffmpeg-8ab706677c8198fcd3e49cb4aa311d1e47709e02.tar.gz
avcodec/evc_frame_merge_bsf: use av_new_packet()
This ensures the buffer is padded as required by the AVPacket API. Signed-off-by: James Almer <jamrial@gmail.com>
-rw-r--r--libavcodec/evc_frame_merge_bsf.c8
1 files changed, 4 insertions, 4 deletions
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);