| Index: libavformat/utils.c
|
| diff --git a/libavformat/utils.c b/libavformat/utils.c
|
| index 71baf58d6003358991faa4ba38411039c85a316c..8833a0b477c2902fac38b442478b5cd965b03eac 100644
|
| --- a/libavformat/utils.c
|
| +++ b/libavformat/utils.c
|
| @@ -595,8 +595,10 @@ int avformat_open_input(AVFormatContext **ps, const char *filename, AVInputForma
|
| ff_id3v2_read(s, ID3v2_DEFAULT_MAGIC);
|
|
|
| if (!(s->flags&AVFMT_FLAG_PRIV_OPT) && s->iformat->read_header)
|
| - if ((ret = s->iformat->read_header(s)) < 0)
|
| + if ((ret = s->iformat->read_header(s)) < 0) {
|
| + s->iformat->read_close(s);
|
| goto fail;
|
| + }
|
|
|
| if (!(s->flags&AVFMT_FLAG_PRIV_OPT) && s->pb && !s->data_offset)
|
| s->data_offset = avio_tell(s->pb);
|
|
|