mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
avio: make url_close() internal.
This commit is contained in:
parent
58a48c6511
commit
e52a9145c8
@ -246,7 +246,7 @@ start:
|
||||
return ret;
|
||||
}
|
||||
if (s->seg_hd) {
|
||||
url_close(s->seg_hd);
|
||||
ffurl_close(s->seg_hd);
|
||||
s->seg_hd = NULL;
|
||||
s->cur_seq_no++;
|
||||
}
|
||||
@ -292,7 +292,7 @@ static int applehttp_close(URLContext *h)
|
||||
|
||||
free_segment_list(s);
|
||||
free_variant_list(s);
|
||||
url_close(s->seg_hd);
|
||||
ffurl_close(s->seg_hd);
|
||||
av_free(s);
|
||||
return 0;
|
||||
}
|
||||
|
@ -164,7 +164,7 @@ int url_open_protocol (URLContext **puc, struct URLProtocol *up,
|
||||
if (!ret)
|
||||
return 0;
|
||||
fail:
|
||||
url_close(*puc);
|
||||
ffurl_close(*puc);
|
||||
*puc = NULL;
|
||||
return ret;
|
||||
}
|
||||
@ -196,6 +196,10 @@ int64_t url_seek(URLContext *h, int64_t pos, int whence)
|
||||
{
|
||||
return ffurl_seek(h, pos, whence);
|
||||
}
|
||||
int url_close(URLContext *h)
|
||||
{
|
||||
return ffurl_close(h);
|
||||
}
|
||||
#endif
|
||||
|
||||
#define URL_SCHEME_CHARS \
|
||||
@ -239,7 +243,7 @@ int ffurl_open(URLContext **puc, const char *filename, int flags)
|
||||
ret = ffurl_connect(*puc);
|
||||
if (!ret)
|
||||
return 0;
|
||||
url_close(*puc);
|
||||
ffurl_close(*puc);
|
||||
*puc = NULL;
|
||||
return ret;
|
||||
}
|
||||
@ -309,7 +313,7 @@ int64_t ffurl_seek(URLContext *h, int64_t pos, int whence)
|
||||
return ret;
|
||||
}
|
||||
|
||||
int url_close(URLContext *h)
|
||||
int ffurl_close(URLContext *h)
|
||||
{
|
||||
int ret = 0;
|
||||
if (!h) return 0; /* can happen when ffurl_open fails */
|
||||
@ -330,7 +334,7 @@ int url_exist(const char *filename)
|
||||
URLContext *h;
|
||||
if (ffurl_open(&h, filename, URL_RDONLY) < 0)
|
||||
return 0;
|
||||
url_close(h);
|
||||
ffurl_close(h);
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
@ -109,17 +109,9 @@ attribute_deprecated int url_read(URLContext *h, unsigned char *buf, int size);
|
||||
attribute_deprecated int url_read_complete(URLContext *h, unsigned char *buf, int size);
|
||||
attribute_deprecated int url_write(URLContext *h, const unsigned char *buf, int size);
|
||||
attribute_deprecated int64_t url_seek(URLContext *h, int64_t pos, int whence);
|
||||
attribute_deprecated int url_close(URLContext *h);
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Close the resource accessed by the URLContext h, and free the
|
||||
* memory used by it.
|
||||
*
|
||||
* @return a negative value if an error condition occurred, 0
|
||||
* otherwise
|
||||
*/
|
||||
int url_close(URLContext *h);
|
||||
|
||||
/**
|
||||
* Return a non-zero value if the resource indicated by url
|
||||
* exists, 0 otherwise.
|
||||
|
@ -950,7 +950,7 @@ int avio_open(AVIOContext **s, const char *filename, int flags)
|
||||
return err;
|
||||
err = ffio_fdopen(s, h);
|
||||
if (err < 0) {
|
||||
url_close(h);
|
||||
ffurl_close(h);
|
||||
return err;
|
||||
}
|
||||
return 0;
|
||||
@ -962,7 +962,7 @@ int avio_close(AVIOContext *s)
|
||||
|
||||
av_free(s->buffer);
|
||||
av_free(s);
|
||||
return url_close(h);
|
||||
return ffurl_close(h);
|
||||
}
|
||||
|
||||
#if FF_API_OLD_AVIO
|
||||
|
@ -47,7 +47,7 @@ static av_cold int concat_close(URLContext *h)
|
||||
struct concat_nodes *nodes = data->nodes;
|
||||
|
||||
for (i = 0; i != data->length; i++)
|
||||
err |= url_close(nodes[i].uc);
|
||||
err |= ffurl_close(nodes[i].uc);
|
||||
|
||||
av_freep(&data->nodes);
|
||||
av_freep(&h->priv_data);
|
||||
@ -106,7 +106,7 @@ static av_cold int concat_open(URLContext *h, const char *uri, int flags)
|
||||
|
||||
/* creating size */
|
||||
if ((size = url_filesize(uc)) < 0) {
|
||||
url_close(uc);
|
||||
ffurl_close(uc);
|
||||
err = AVERROR(ENOSYS);
|
||||
break;
|
||||
}
|
||||
|
@ -69,7 +69,7 @@ static int gopher_close(URLContext *h)
|
||||
{
|
||||
GopherContext *s = h->priv_data;
|
||||
if (s->hd) {
|
||||
url_close(s->hd);
|
||||
ffurl_close(s->hd);
|
||||
s->hd = NULL;
|
||||
}
|
||||
av_freep(&h->priv_data);
|
||||
|
@ -134,7 +134,7 @@ static int http_open_cnx(URLContext *h)
|
||||
goto fail;
|
||||
if (s->http_code == 401) {
|
||||
if (cur_auth_type == HTTP_AUTH_NONE && s->auth_state.auth_type != HTTP_AUTH_NONE) {
|
||||
url_close(hd);
|
||||
ffurl_close(hd);
|
||||
goto redo;
|
||||
} else
|
||||
goto fail;
|
||||
@ -142,7 +142,7 @@ static int http_open_cnx(URLContext *h)
|
||||
if ((s->http_code == 301 || s->http_code == 302 || s->http_code == 303 || s->http_code == 307)
|
||||
&& location_changed == 1) {
|
||||
/* url moved, get next */
|
||||
url_close(hd);
|
||||
ffurl_close(hd);
|
||||
if (redirects++ >= MAX_REDIRECTS)
|
||||
return AVERROR(EIO);
|
||||
location_changed = 0;
|
||||
@ -151,7 +151,7 @@ static int http_open_cnx(URLContext *h)
|
||||
return 0;
|
||||
fail:
|
||||
if (hd)
|
||||
url_close(hd);
|
||||
ffurl_close(hd);
|
||||
s->hd = NULL;
|
||||
return AVERROR(EIO);
|
||||
}
|
||||
@ -457,7 +457,7 @@ static int http_close(URLContext *h)
|
||||
}
|
||||
|
||||
if (s->hd)
|
||||
url_close(s->hd);
|
||||
ffurl_close(s->hd);
|
||||
return ret;
|
||||
}
|
||||
|
||||
@ -493,7 +493,7 @@ static int64_t http_seek(URLContext *h, int64_t off, int whence)
|
||||
s->off = old_off;
|
||||
return -1;
|
||||
}
|
||||
url_close(old_hd);
|
||||
ffurl_close(old_hd);
|
||||
return off;
|
||||
}
|
||||
|
||||
|
@ -69,7 +69,7 @@ static int md5_close(URLContext *h)
|
||||
if (err)
|
||||
return err;
|
||||
err = ffurl_write(out, buf, i*2+1);
|
||||
url_close(out);
|
||||
ffurl_close(out);
|
||||
} else {
|
||||
if (fwrite(buf, 1, i*2+1, stdout) < i*2+1)
|
||||
err = AVERROR(errno);
|
||||
|
@ -64,7 +64,7 @@ static int mmsh_close(URLContext *h)
|
||||
MMSHContext *mmsh = (MMSHContext *)h->priv_data;
|
||||
MMSContext *mms = &mmsh->mms;
|
||||
if (mms->mms_hd)
|
||||
url_close(mms->mms_hd);
|
||||
ffurl_close(mms->mms_hd);
|
||||
av_free(mms->streams);
|
||||
av_free(mms->asf_header);
|
||||
av_freep(&h->priv_data);
|
||||
@ -259,7 +259,7 @@ static int mmsh_open(URLContext *h, const char *uri, int flags)
|
||||
}
|
||||
|
||||
// close the socket and then reopen it for sending the second play request.
|
||||
url_close(mms->mms_hd);
|
||||
ffurl_close(mms->mms_hd);
|
||||
memset(headers, 0, sizeof(headers));
|
||||
if (ffurl_alloc(&mms->mms_hd, httpname, URL_RDONLY) < 0) {
|
||||
return AVERROR(EIO);
|
||||
|
@ -464,7 +464,7 @@ static int mms_close(URLContext *h)
|
||||
MMSContext *mms = &mmst->mms;
|
||||
if(mms->mms_hd) {
|
||||
send_close_packet(mmst);
|
||||
url_close(mms->mms_hd);
|
||||
ffurl_close(mms->mms_hd);
|
||||
}
|
||||
|
||||
/* free all separately allocated pointers in mms */
|
||||
|
@ -786,7 +786,7 @@ static int rtmp_close(URLContext *h)
|
||||
gen_delete_stream(h, rt);
|
||||
|
||||
av_freep(&rt->flv_data);
|
||||
url_close(rt->stream);
|
||||
ffurl_close(rt->stream);
|
||||
av_free(rt);
|
||||
return 0;
|
||||
}
|
||||
|
@ -212,9 +212,9 @@ static int rtp_open(URLContext *h, const char *uri, int flags)
|
||||
|
||||
fail:
|
||||
if (s->rtp_hd)
|
||||
url_close(s->rtp_hd);
|
||||
ffurl_close(s->rtp_hd);
|
||||
if (s->rtcp_hd)
|
||||
url_close(s->rtcp_hd);
|
||||
ffurl_close(s->rtcp_hd);
|
||||
av_free(s);
|
||||
return AVERROR(EIO);
|
||||
}
|
||||
@ -313,8 +313,8 @@ static int rtp_close(URLContext *h)
|
||||
{
|
||||
RTPContext *s = h->priv_data;
|
||||
|
||||
url_close(s->rtp_hd);
|
||||
url_close(s->rtcp_hd);
|
||||
ffurl_close(s->rtp_hd);
|
||||
ffurl_close(s->rtcp_hd);
|
||||
av_free(s);
|
||||
return 0;
|
||||
}
|
||||
|
@ -509,7 +509,7 @@ void ff_rtsp_undo_setup(AVFormatContext *s)
|
||||
}
|
||||
rtsp_st->transport_priv = NULL;
|
||||
if (rtsp_st->rtp_handle)
|
||||
url_close(rtsp_st->rtp_handle);
|
||||
ffurl_close(rtsp_st->rtp_handle);
|
||||
rtsp_st->rtp_handle = NULL;
|
||||
}
|
||||
}
|
||||
@ -1297,8 +1297,8 @@ fail:
|
||||
void ff_rtsp_close_connections(AVFormatContext *s)
|
||||
{
|
||||
RTSPState *rt = s->priv_data;
|
||||
if (rt->rtsp_hd_out != rt->rtsp_hd) url_close(rt->rtsp_hd_out);
|
||||
url_close(rt->rtsp_hd);
|
||||
if (rt->rtsp_hd_out != rt->rtsp_hd) ffurl_close(rt->rtsp_hd_out);
|
||||
ffurl_close(rt->rtsp_hd);
|
||||
rt->rtsp_hd = rt->rtsp_hd_out = NULL;
|
||||
}
|
||||
|
||||
@ -1888,7 +1888,7 @@ static int rtp_read_header(AVFormatContext *s,
|
||||
break;
|
||||
}
|
||||
getsockname(url_get_file_handle(in), (struct sockaddr*) &addr, &addrlen);
|
||||
url_close(in);
|
||||
ffurl_close(in);
|
||||
in = NULL;
|
||||
|
||||
memset(&codec, 0, sizeof(codec));
|
||||
@ -1927,7 +1927,7 @@ static int rtp_read_header(AVFormatContext *s,
|
||||
|
||||
fail:
|
||||
if (in)
|
||||
url_close(in);
|
||||
ffurl_close(in);
|
||||
ff_network_close();
|
||||
return ret;
|
||||
}
|
||||
|
@ -54,7 +54,7 @@ static int sap_read_close(AVFormatContext *s)
|
||||
if (sap->sdp_ctx)
|
||||
av_close_input_stream(sap->sdp_ctx);
|
||||
if (sap->ann_fd)
|
||||
url_close(sap->ann_fd);
|
||||
ffurl_close(sap->ann_fd);
|
||||
av_freep(&sap->sdp);
|
||||
ff_network_close();
|
||||
return 0;
|
||||
|
@ -59,7 +59,7 @@ static int sap_write_close(AVFormatContext *s)
|
||||
|
||||
av_freep(&sap->ann);
|
||||
if (sap->ann_fd)
|
||||
url_close(sap->ann_fd);
|
||||
ffurl_close(sap->ann_fd);
|
||||
ff_network_close();
|
||||
return 0;
|
||||
}
|
||||
|
@ -102,4 +102,13 @@ int ffurl_write(URLContext *h, const unsigned char *buf, int size);
|
||||
*/
|
||||
int64_t ffurl_seek(URLContext *h, int64_t pos, int whence);
|
||||
|
||||
/**
|
||||
* Close the resource accessed by the URLContext h, and free the
|
||||
* memory used by it.
|
||||
*
|
||||
* @return a negative value if an error condition occurred, 0
|
||||
* otherwise
|
||||
*/
|
||||
int ffurl_close(URLContext *h);
|
||||
|
||||
#endif //AVFORMAT_URL_H
|
||||
|
Loading…
Reference in New Issue
Block a user