This was left over from an earlier version which created the new
packet inside the current frame structure.  Now it just leaks an
unused packet, so remove the allocation entirely.
---
On 26/04/17 10:41, Anton Khirnov wrote:
> ---
>  libavcodec/vp9_raw_reorder_bsf.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/libavcodec/vp9_raw_reorder_bsf.c 
> b/libavcodec/vp9_raw_reorder_bsf.c
> index 7f00f5f..fca1264 100644
> --- a/libavcodec/vp9_raw_reorder_bsf.c
> +++ b/libavcodec/vp9_raw_reorder_bsf.c
> @@ -205,6 +205,7 @@ static int vp9_raw_reorder_make_output(AVBSFContext *bsf,
>                 frame->sequence, frame->pts);
>  
>          av_packet_move_ref(out, frame->packet);
> +        av_packet_free(&frame->packet);
>  
>          frame->needs_output = frame->needs_display = 0;
>      } else if (frame->needs_output) {
> @@ -219,6 +220,7 @@ static int vp9_raw_reorder_make_output(AVBSFContext *bsf,
>          }
>  
>          av_packet_move_ref(out, frame->packet);
> +        av_packet_free(&frame->packet);
>          out->pts = out->dts;
>  
>          frame->needs_output = 0;
> 

How about not making the empty packet in the first place?


 libavcodec/vp9_raw_reorder_bsf.c | 4 ----
 1 file changed, 4 deletions(-)

diff --git a/libavcodec/vp9_raw_reorder_bsf.c b/libavcodec/vp9_raw_reorder_bsf.c
index 7f00f5f10..f5a5e49ed 100644
--- a/libavcodec/vp9_raw_reorder_bsf.c
+++ b/libavcodec/vp9_raw_reorder_bsf.c
@@ -241,10 +241,6 @@ static int vp9_raw_reorder_make_output(AVBSFContext *bsf,
                "(%"PRId64") from slot %d.\n",
                frame->sequence, frame->pts, s);
 
-        frame->packet = av_packet_alloc();
-        if (!frame->packet)
-            return AVERROR(ENOMEM);
-
         err = av_new_packet(out, 2);
         if (err < 0)
             return err;
-- 
2.11.0
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to