Merge remote-tracking branch 'cehoyos/master'

* cehoyos/master:
  lavf/mux: Always call write_trailer() from av_write_trailer() to avoid a leak.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Michael Niedermayer 2014-11-20 11:41:27 +01:00
commit 9266eb0c62

View File

@ -926,7 +926,7 @@ int av_write_trailer(AVFormatContext *s)
for (;; ) {
AVPacket pkt;
ret = interleave_packet(s, &pkt, NULL, 1);
if (ret < 0) //FIXME cleanup needed for ret<0 ?
if (ret < 0)
goto fail;
if (!ret)
break;
@ -943,10 +943,14 @@ int av_write_trailer(AVFormatContext *s)
goto fail;
}
if (s->oformat->write_trailer)
ret = s->oformat->write_trailer(s);
fail:
if (s->oformat->write_trailer)
if (ret >= 0) {
ret = s->oformat->write_trailer(s);
} else {
s->oformat->write_trailer(s);
}
if (s->pb)
avio_flush(s->pb);
if (ret == 0)