Add handling of EAGAIN at packet boundaries. See "[PATCH] RTSP-MS 14/15:

ASF packet parsing" thread for discussion / reasoning.

Originally committed as revision 19509 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Ronald S. Bultje 2009-07-26 19:09:35 +00:00
parent a898cdc995
commit 2078ca16ee
1 changed files with 8 additions and 0 deletions

View File

@ -609,6 +609,14 @@ static int ff_asf_get_packet(AVFormatContext *s, ByteIOContext *pb)
}
if (c != 0x82) {
/**
* This code allows handling of -EAGAIN at packet boundaries (i.e.
* if the packet sync code above triggers -EAGAIN). This does not
* imply complete -EAGAIN handling support at random positions in
* the stream.
*/
if (url_ferror(pb) == AVERROR(EAGAIN))
return AVERROR(EAGAIN);
if (!url_feof(pb))
av_log(s, AV_LOG_ERROR, "ff asf bad header %x at:%"PRId64"\n", c, url_ftell(pb));
}