const char *avio_enum_protocols(void **opaque, int output)
{
- URLProtocol **p = opaque;
- *p = ffurl_protocol_next(*p);
- if (!*p) return NULL;
- if ((output && (*p)->url_write) || (!output && (*p)->url_read))
- return (*p)->name;
+ URLProtocol *p;
+ *opaque = ffurl_protocol_next(*opaque);
+ if (!(p = *opaque)) return NULL;
+ if ((output && p->url_write) || (!output && p->url_read))
+ return p->name;
return avio_enum_protocols(opaque, output);
}
else
av_usleep(1000);
} else if (ret < 1)
- return ret < 0 ? ret : len;
+ return (ret < 0 && ret != AVERROR_EOF) ? ret : len;
if (ret)
fast_retries = FFMAX(fast_retries, 2);
len += ret;