Paul B Mahol (12020-09-15):
> This removes big CPU overhead for demuxing chained ogg streams.
> 
> Signed-off-by: Paul B Mahol <one...@gmail.com>
> ---
>  libavformat/aviobuf.c | 5 ++---
>  1 file changed, 2 insertions(+), 3 deletions(-)
> 
> diff --git a/libavformat/aviobuf.c b/libavformat/aviobuf.c
> index a77517d712..6d01150f66 100644
> --- a/libavformat/aviobuf.c
> +++ b/libavformat/aviobuf.c
> @@ -1005,12 +1005,11 @@ int ffio_ensure_seekback(AVIOContext *s, int64_t 
> buf_size)
>          return 0;
>      av_assert0(!s->write_flag);
>  
> -    buffer = av_malloc(buf_size);
> +    buffer = s->buffer;

> +    buffer = av_realloc(buffer, buf_size);
>      if (!buffer)
>          return AVERROR(ENOMEM);

Leaks in case of failure.

>  
> -    memcpy(buffer, s->buffer, filled);
> -    av_free(s->buffer);
>      s->buf_ptr = buffer + (s->buf_ptr - s->buffer);
>      s->buf_end = buffer + (s->buf_end - s->buffer);
>      s->buffer = buffer;

-- 
  Nicolas George

Attachment: signature.asc
Description: PGP signature

_______________________________________________
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".

Reply via email to