avformat/utils: Fix memleaks in avformat_open_input()
authorAndreas Rheinhardt <andreas.rheinhardt@gmail.com>
Tue, 7 Jan 2020 13:55:47 +0000 (14:55 +0100)
committerAndreas Rheinhardt <andreas.rheinhardt@gmail.com>
Wed, 20 May 2020 08:51:30 +0000 (10:51 +0200)
commit2c884238571efe97e1add6e42efc9e6f6cb8f706
tree61c45c938c36a719681531595e75e8f57b27b793
parent15ccdea8b381e4e120fd5a98b98b6fde5371097f
avformat/utils: Fix memleaks in avformat_open_input()

A demuxer might have allocated memory while reading the header. If
reading the header was successfull and an error happens before returning
(e.g. when queueing the attached pictures), the read_close function
would have never been called, so that all those allocations would leak.
This commit changes this.

Furthermore, there would be even more memleaks if the error level was
set to AV_EF_EXPLODE in case there is both metadata and id3v2 metadata.
This has been fixed, too.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Signed-off-by: Marton Balint <cus@passwd.hu>
(cherry picked from commit e2307f4ff197646a7feee0edbcdd2d3262932676)
libavformat/utils.c