[FFmpeg-cvslog] r25367 - trunk/libavformat/avio.c
michael
subversion
Wed Oct 6 13:18:38 CEST 2010
Author: michael
Date: Wed Oct 6 13:18:38 2010
New Revision: 25367
Log:
Factor retry_transfer_wrapper() out of url_read_complete()
Modified:
trunk/libavformat/avio.c
Modified: trunk/libavformat/avio.c
==============================================================================
--- trunk/libavformat/avio.c Wed Oct 6 05:14:07 2010 (r25366)
+++ trunk/libavformat/avio.c Wed Oct 6 13:18:38 2010 (r25367)
@@ -215,14 +215,15 @@ int url_read(URLContext *h, unsigned cha
return ret;
}
-int url_read_complete(URLContext *h, unsigned char *buf, int size)
+static inline int retry_transfer_wrapper(URLContext *h, unsigned char *buf, int size,
+ int (*transfer_func)(URLContext *h, unsigned char *buf, int size))
{
int ret, len;
int fast_retries = 5;
len = 0;
while (len < size) {
- ret = url_read(h, buf+len, size-len);
+ ret = transfer_func(h, buf+len, size-len);
if (ret == AVERROR(EAGAIN)) {
ret = 0;
if (fast_retries)
@@ -238,6 +239,11 @@ int url_read_complete(URLContext *h, uns
return len;
}
+int url_read_complete(URLContext *h, unsigned char *buf, int size)
+{
+ return retry_transfer_wrapper(h, buf, size, url_read);
+}
+
int url_write(URLContext *h, const unsigned char *buf, int size)
{
int ret;
More information about the ffmpeg-cvslog
mailing list