Commit f6912cc3 authored by Mark Thompson's avatar Mark Thompson

trace_headers: Fix memory leaks on syntax read failures

parent b2adc316
...@@ -49,15 +49,11 @@ static int trace_headers_init(AVBSFContext *bsf) ...@@ -49,15 +49,11 @@ static int trace_headers_init(AVBSFContext *bsf)
av_log(bsf, AV_LOG_INFO, "Extradata\n"); av_log(bsf, AV_LOG_INFO, "Extradata\n");
err = ff_cbs_read_extradata(ctx->cbc, &ps, bsf->par_in); err = ff_cbs_read_extradata(ctx->cbc, &ps, bsf->par_in);
if (err < 0) {
av_log(bsf, AV_LOG_ERROR, "Failed to read extradata.\n");
return err;
}
ff_cbs_fragment_uninit(ctx->cbc, &ps); ff_cbs_fragment_uninit(ctx->cbc, &ps);
} }
return 0; return err;
} }
static void trace_headers_close(AVBSFContext *bsf) static void trace_headers_close(AVBSFContext *bsf)
...@@ -97,14 +93,12 @@ static int trace_headers(AVBSFContext *bsf, AVPacket *pkt) ...@@ -97,14 +93,12 @@ static int trace_headers(AVBSFContext *bsf, AVPacket *pkt)
av_log(bsf, AV_LOG_INFO, "Packet: %d bytes%s.\n", pkt->size, tmp); av_log(bsf, AV_LOG_INFO, "Packet: %d bytes%s.\n", pkt->size, tmp);
err = ff_cbs_read_packet(ctx->cbc, &au, pkt); err = ff_cbs_read_packet(ctx->cbc, &au, pkt);
if (err < 0) {
av_packet_unref(pkt);
return err;
}
ff_cbs_fragment_uninit(ctx->cbc, &au); ff_cbs_fragment_uninit(ctx->cbc, &au);
return 0; if (err < 0)
av_packet_unref(pkt);
return err;
} }
const AVBitStreamFilter ff_trace_headers_bsf = { const AVBitStreamFilter ff_trace_headers_bsf = {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment