diff --git a/libavformat/av1.c b/libavformat/av1.c index 876fd92733..709484b361 100644 --- a/libavformat/av1.c +++ b/libavformat/av1.c @@ -82,7 +82,6 @@ int ff_av1_filter_obus_buf(const uint8_t *in, uint8_t **out, int *size) memset(buf + len, 0, AV_INPUT_BUFFER_PADDING_SIZE); - av_freep(out); *out = buf; *size = len; diff --git a/libavformat/av1.h b/libavformat/av1.h index acba12612c..52d0814e86 100644 --- a/libavformat/av1.h +++ b/libavformat/av1.h @@ -68,6 +68,7 @@ int ff_av1_filter_obus(AVIOContext *pb, const uint8_t *buf, int size); * * @return 0 in case of success, a negative AVERROR code in case of failure. * On failure, out and size are unchanged + * @note *out will be treated as unintialized on input and will not be freed. */ int ff_av1_filter_obus_buf(const uint8_t *in, uint8_t **out, int *size); 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; diff --git a/libavformat/hevc.h b/libavformat/hevc.h index bb144397c0..0f56325c1c 100644 --- a/libavformat/hevc.h +++ b/libavformat/hevc.h @@ -73,6 +73,7 @@ int ff_hevc_annexb2mp4(AVIOContext *pb, const uint8_t *buf_in, * parameter set NAL units shall be written, may be NULL * @return 0 in case of success, a negative value corresponding to an AVERROR * code in case of failure + * @note *buf_out will be treated as uninitialized on input and won't be freed. */ int ff_hevc_annexb2mp4_buf(const uint8_t *buf_in, uint8_t **buf_out, int *size, int filter_ps, int *ps_count);