Message ID | 20190617034223.21195-4-andreas.rheinhardt@gmail.com |
---|---|
State | Accepted |
Commit | 45fd7e44a4ddee636d8c30b92b6a0ff39f976936 |
Headers | show |
diff --git a/libavcodec/filter_units_bsf.c b/libavcodec/filter_units_bsf.c index bc2ca288dd..0876693c81 100644 --- a/libavcodec/filter_units_bsf.c +++ b/libavcodec/filter_units_bsf.c @@ -153,6 +153,8 @@ static int filter_units_filter(AVBSFContext *bsf, AVPacket *out) goto fail; fail: + if (err < 0) + av_packet_unref(out); ff_cbs_fragment_reset(ctx->cbc, frag); av_packet_free(&in);
According to the API, the packet structure a bsf receives must not be touched on failure, yet filter_units nevertheless did it. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> --- libavcodec/filter_units_bsf.c | 2 ++ 1 file changed, 2 insertions(+)