Commit 32d545e0 authored by Samuel Pitoiset's avatar Samuel Pitoiset Committed by Martin Storsjö

avio: Add a function for signalling end of reading/writing

Signed-off-by: 's avatarMartin Storsjö <martin@martin.st>
parent 0ce4a627
...@@ -345,6 +345,13 @@ int ffurl_get_file_handle(URLContext *h) ...@@ -345,6 +345,13 @@ int ffurl_get_file_handle(URLContext *h)
return h->prot->url_get_file_handle(h); return h->prot->url_get_file_handle(h);
} }
int ffurl_shutdown(URLContext *h, int flags)
{
if (!h->prot->url_shutdown)
return AVERROR(EINVAL);
return h->prot->url_shutdown(h, flags);
}
int ff_check_interrupt(AVIOInterruptCB *cb) int ff_check_interrupt(AVIOInterruptCB *cb)
{ {
int ret; int ret;
......
...@@ -81,6 +81,7 @@ typedef struct URLProtocol { ...@@ -81,6 +81,7 @@ typedef struct URLProtocol {
int64_t (*url_read_seek)(URLContext *h, int stream_index, int64_t (*url_read_seek)(URLContext *h, int stream_index,
int64_t timestamp, int flags); int64_t timestamp, int flags);
int (*url_get_file_handle)(URLContext *h); int (*url_get_file_handle)(URLContext *h);
int (*url_shutdown)(URLContext *h, int flags);
int priv_data_size; int priv_data_size;
const AVClass *priv_data_class; const AVClass *priv_data_class;
int flags; int flags;
...@@ -200,6 +201,18 @@ int64_t ffurl_size(URLContext *h); ...@@ -200,6 +201,18 @@ int64_t ffurl_size(URLContext *h);
*/ */
int ffurl_get_file_handle(URLContext *h); int ffurl_get_file_handle(URLContext *h);
/**
* Signal the URLContext that we are done reading or writing the stream.
*
* @param h pointer to the resource
* @param flags flags which control how the resource indicated by url
* is to be shutdown
*
* @return a negative value if an error condition occurred, 0
* otherwise
*/
int ffurl_shutdown(URLContext *h, int flags);
/** /**
* Register the URLProtocol protocol. * Register the URLProtocol protocol.
* *
......
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