From 2899995a6fdd4a4f7365333d951f86cc0da8eec5 Mon Sep 17 00:00:00 2001 From: Andreas Rheinhardt Date: Fri, 24 Jan 2020 23:48:28 +0100 Subject: avformat/av1, avc, hevc: Remove av_freep() ff_av1_filter_obus_buf() and ff_avc_parse_nal_units_buf() both have a pointer-to-pointer parameter which they use to pass a newly allocated buffer to the caller. And both functions freed what this pointer points to before overwriting it. But no caller of these functions used this feature, but some had to initialize the pointer just because of this. So remove it and update the documentation of ff_av1_filter_obus_buf() wrt this fact. ff_hevc_annexb2mp4_buf in contrast did not free the pointer. This has been documented, too. Signed-off-by: Andreas Rheinhardt Signed-off-by: James Almer --- libavformat/avc.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'libavformat/avc.c') diff --git a/libavformat/avc.c b/libavformat/avc.c index e4e82e1864..cd15ac3cdb 100644 --- a/libavformat/avc.c +++ b/libavformat/avc.c @@ -101,7 +101,6 @@ int ff_avc_parse_nal_units_buf(const uint8_t *buf_in, uint8_t **buf, int *size) ff_avc_parse_nal_units(pb, buf_in, *size); - av_freep(buf); *size = avio_close_dyn_buf(pb, buf); return 0; } @@ -109,7 +108,7 @@ int ff_avc_parse_nal_units_buf(const uint8_t *buf_in, uint8_t **buf, int *size) int ff_isom_write_avcc(AVIOContext *pb, const uint8_t *data, int len) { AVIOContext *sps_pb = NULL, *pps_pb = NULL, *sps_ext_pb = NULL; - uint8_t *buf = NULL, *end, *start = NULL; + uint8_t *buf, *end, *start; uint8_t *sps, *pps, *sps_ext; uint32_t sps_size = 0, pps_size = 0, sps_ext_size = 0; int ret, nb_sps = 0, nb_pps = 0, nb_sps_ext = 0; -- cgit v1.2.3