libav: return EOF when stream is out of data
This fixes a bug where gif decoding with avdemux/avdec would never terminate.
According to the ffmpeg documentation[1] the read_packet function should never return 0. ffmpegdata_peek returns 0 when the stream is EOF causing us to fail detecting the EOF and never close the pipeline, continually spinning on more data. ffmpeg instead wants an AVERROR_EOF code to signal EOF.
Edited by Jesper Jensen