Re: [FFmpeg-devel] [PATCH] avformat/flacdec: Reorder allocations to avoid leak on error

2024-05-19 Thread Andreas Rheinhardt
Andreas Rheinhardt:
> Fixes Coverity issue #1591795.
> 
> Signed-off-by: Andreas Rheinhardt 
> ---
>  libavformat/flacdec.c | 11 +--
>  1 file changed, 5 insertions(+), 6 deletions(-)
> 
> diff --git a/libavformat/flacdec.c b/libavformat/flacdec.c
> index 3d35da5fea..3c317acaee 100644
> --- a/libavformat/flacdec.c
> +++ b/libavformat/flacdec.c
> @@ -283,12 +283,6 @@ static av_unused int64_t 
> flac_read_timestamp(AVFormatContext *s, int stream_inde
>  if (avio_seek(s->pb, *ppos, SEEK_SET) < 0)
>  return AV_NOPTS_VALUE;
>  
> -parser = av_parser_init(st->codecpar->codec_id);
> -if (!parser){
> -return AV_NOPTS_VALUE;
> -}
> -parser->flags |= PARSER_FLAG_USE_CODEC_TS;
> -
>  if (!flac->parser_dec) {
>  flac->parser_dec = avcodec_alloc_context3(NULL);
>  if (!flac->parser_dec)
> @@ -299,6 +293,11 @@ static av_unused int64_t 
> flac_read_timestamp(AVFormatContext *s, int stream_inde
>  return ret;
>  }
>  
> +parser = av_parser_init(st->codecpar->codec_id);
> +if (!parser)
> +return AV_NOPTS_VALUE;
> +parser->flags |= PARSER_FLAG_USE_CODEC_TS;
> +
>  for (;;){
>  uint8_t *data;
>  int size;

Will apply this patch tomorrow unless there are objections.

- Andreas

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".


[FFmpeg-devel] [PATCH] avformat/flacdec: Reorder allocations to avoid leak on error

2024-05-17 Thread Andreas Rheinhardt
Fixes Coverity issue #1591795.

Signed-off-by: Andreas Rheinhardt 
---
 libavformat/flacdec.c | 11 +--
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/libavformat/flacdec.c b/libavformat/flacdec.c
index 3d35da5fea..3c317acaee 100644
--- a/libavformat/flacdec.c
+++ b/libavformat/flacdec.c
@@ -283,12 +283,6 @@ static av_unused int64_t 
flac_read_timestamp(AVFormatContext *s, int stream_inde
 if (avio_seek(s->pb, *ppos, SEEK_SET) < 0)
 return AV_NOPTS_VALUE;
 
-parser = av_parser_init(st->codecpar->codec_id);
-if (!parser){
-return AV_NOPTS_VALUE;
-}
-parser->flags |= PARSER_FLAG_USE_CODEC_TS;
-
 if (!flac->parser_dec) {
 flac->parser_dec = avcodec_alloc_context3(NULL);
 if (!flac->parser_dec)
@@ -299,6 +293,11 @@ static av_unused int64_t 
flac_read_timestamp(AVFormatContext *s, int stream_inde
 return ret;
 }
 
+parser = av_parser_init(st->codecpar->codec_id);
+if (!parser)
+return AV_NOPTS_VALUE;
+parser->flags |= PARSER_FLAG_USE_CODEC_TS;
+
 for (;;){
 uint8_t *data;
 int size;
-- 
2.40.1

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".