Commit acb07430 authored by Martin Storsjö's avatar Martin Storsjö

avio: Only do implicit network initialization for network protocols

The implicit network initialization is set to be removed in the
future, but is kept for compatibility. By not doing the implicit
initialization for non-network protocols, we avoid the warning
about avformat_network_init() not being called for these, where
it really doesn't make much sense.
Signed-off-by: 's avatarMartin Storsjö <martin@martin.st>
parent 32b83aee
......@@ -129,7 +129,7 @@ static int url_alloc_for_protocol (URLContext **puc, struct URLProtocol *up,
int err;
#if CONFIG_NETWORK
if (!ff_network_init())
if (up->flags & URL_PROTOCOL_FLAG_NETWORK && !ff_network_init())
return AVERROR(EIO);
#endif
uc = av_mallocz(sizeof(URLContext) + strlen(filename) + 1);
......@@ -159,7 +159,8 @@ static int url_alloc_for_protocol (URLContext **puc, struct URLProtocol *up,
fail:
*puc = NULL;
#if CONFIG_NETWORK
ff_network_close();
if (up->flags & URL_PROTOCOL_FLAG_NETWORK)
ff_network_close();
#endif
return err;
}
......@@ -380,7 +381,8 @@ int ffurl_close(URLContext *h)
if (h->is_connected && h->prot->url_close)
ret = h->prot->url_close(h);
#if CONFIG_NETWORK
ff_network_close();
if (h->prot->flags & URL_PROTOCOL_FLAG_NETWORK)
ff_network_close();
#endif
if (h->prot->priv_data_size) {
if (h->prot->priv_data_class)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment