flvdec: Check the avio_seek return value after reading a metadata packet
authorMartin Storsjö <martin@martin.st>
Fri, 27 Oct 2017 00:27:43 +0000 (08:27 +0800)
committerSteven Liu <lq@chinaffmpeg.org>
Fri, 27 Oct 2017 00:27:43 +0000 (08:27 +0800)
commit15537c904ec96e4d2e9435100d403283a5fed029
tree4b663f91e58cd7c21dae183cf15d065763d3def2
parent171adca696ee1f507d698940a35ccf7a85c5d072
flvdec: Check the avio_seek return value after reading a  metadata packet

merge from libav: 585dc1aecef0371ad6f16cb3750ae2a6da9cf00a

If the metadata packet is corrupted, flv_read_metabody can accidentally
read past the start of the next packet. If the start of the  next packet
had been flushed out of the IO buffer, we would be unable to seek to
the right position (on a nonseekable stream).

Prefer to clearly error out instead of silently  trying to read from a
desynced stream which will only be interpreted as garbage.
libavformat/flvdec.c