[FFmpeg-cvslog] r20137 - trunk/libavformat/raw.c

reimar subversion
Fri Oct 2 08:40:51 CEST 2009


Author: reimar
Date: Fri Oct  2 08:40:50 2009
New Revision: 20137

Log:
Return any error return values from av_get_packet, get_buffer etc. unchanged
in the raw demuxers.
Also remove special handling of 0-size reads, if they are due to an error/eof,
these are already converted to the appropriate error by get_buffer.

Modified:
   trunk/libavformat/raw.c

Modified: trunk/libavformat/raw.c
==============================================================================
--- trunk/libavformat/raw.c	Fri Oct  2 08:38:56 2009	(r20136)
+++ trunk/libavformat/raw.c	Fri Oct  2 08:40:50 2009	(r20137)
@@ -120,9 +120,8 @@ static int raw_read_packet(AVFormatConte
     ret= av_get_packet(s->pb, pkt, size);
 
     pkt->stream_index = 0;
-    if (ret <= 0) {
-        return AVERROR(EIO);
-    }
+    if (ret < 0)
+        return ret;
 
     bps= av_get_bits_per_sample(s->streams[0]->codec->codec_id);
     assert(bps); // if false there IS a bug elsewhere (NOT in this function)
@@ -144,9 +143,9 @@ int ff_raw_read_partial_packet(AVFormatC
     pkt->pos= url_ftell(s->pb);
     pkt->stream_index = 0;
     ret = get_partial_buffer(s->pb, pkt->data, size);
-    if (ret <= 0) {
+    if (ret < 0) {
         av_free_packet(pkt);
-        return AVERROR(EIO);
+        return ret;
     }
     pkt->size = ret;
     return ret;
@@ -171,8 +170,8 @@ static int rawvideo_read_packet(AVFormat
     pkt->dts= pkt->pos / packet_size;
 
     pkt->stream_index = 0;
-    if (ret <= 0)
-        return AVERROR(EIO);
+    if (ret < 0)
+        return ret;
     return 0;
 }
 #endif
@@ -206,9 +205,9 @@ static int ingenient_read_packet(AVForma
     pkt->pos = url_ftell(s->pb);
     pkt->stream_index = 0;
     ret = get_buffer(s->pb, pkt->data, size);
-    if (ret <= 0) {
+    if (ret < 0) {
         av_free_packet(pkt);
-        return AVERROR(EIO);
+        return ret;
     }
     pkt->size = ret;
     return ret;



More information about the ffmpeg-cvslog mailing list