On 01/18/2012 02:14 AM, Anton Khirnov wrote:

> Fixes a memleak.
> ---
>  libavformat/utils.c |    9 ++++++---
>  1 files changed, 6 insertions(+), 3 deletions(-)
> 
> diff --git a/libavformat/utils.c b/libavformat/utils.c
> index 373f068..b1832ba 100644
> --- a/libavformat/utils.c
> +++ b/libavformat/utils.c
> @@ -3218,9 +3218,12 @@ int av_interleave_packet_per_dts(AVFormatContext *s, 
> AVPacket *out, AVPacket *pk
>   *         < 0 if an error occurred
>   */
>  static int interleave_packet(AVFormatContext *s, AVPacket *out, AVPacket 
> *in, int flush){
> -    if(s->oformat->interleave_packet)
> -        return s->oformat->interleave_packet(s, out, in, flush);
> -    else
> +    if (s->oformat->interleave_packet) {
> +        int ret = s->oformat->interleave_packet(s, out, in, flush);
> +        if (in)
> +            av_free_packet(in);
> +        return ret;
> +    } else
>          return av_interleave_packet_per_dts(s, out, in, flush);
>  }
>  


patch looks good.

-Justin

_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to