Use ff_neterrno instead of errno in tcp.c.
authorMartin Storsjö <martin@martin.st>
Wed, 15 Jul 2009 05:52:49 +0000 (05:52 +0000)
committerDiego Biurrun <diego@biurrun.de>
Wed, 15 Jul 2009 05:52:49 +0000 (05:52 +0000)
If ff_neterrno() is checked instead of errno, that's probably what should be
used in the return value.
As a sideeffect, this gives better compatibility with Windows (CE), where
network errors aren't visible in errno.)
patch by Martin Storsjö, martin martin st

Originally committed as revision 19433 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavformat/tcp.c

index b7983e7..05676eb 100644 (file)
@@ -130,7 +130,7 @@ static int tcp_read(URLContext *h, uint8_t *buf, int size)
             if (len < 0) {
                 if (ff_neterrno() != FF_NETERROR(EINTR) &&
                     ff_neterrno() != FF_NETERROR(EAGAIN))
-                    return AVERROR(errno);
+                    return AVERROR(ff_neterrno());
             } else return len;
         } else if (ret < 0) {
             return -1;
@@ -160,7 +160,7 @@ static int tcp_write(URLContext *h, uint8_t *buf, int size)
             if (len < 0) {
                 if (ff_neterrno() != FF_NETERROR(EINTR) &&
                     ff_neterrno() != FF_NETERROR(EAGAIN))
-                    return AVERROR(errno);
+                    return AVERROR(ff_neterrno());
                 continue;
             }
             size -= len;