summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteven Liu <lq@chinaffmpeg.org>2017-12-28 12:07:22 +0800
committerSteven Liu <lq@chinaffmpeg.org>2017-12-28 12:07:22 +0800
commitbe4dfbf7b71e44a53ca8da882a081e35ea134c83 (patch)
tree3af9ff9501aecd001550849b4b9a099d60f09767
parent658bdc67715b3fbf75f92c7a459272149e3859df (diff)
avformat/avio: check input URLContext value NULL
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Reviewed-by: Karthick Jeyapal <kjeyapal@akamai.com>
-rw-r--r--libavformat/avio.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/libavformat/avio.c b/libavformat/avio.c
index 4dc468350c..63e82872f7 100644
--- a/libavformat/avio.c
+++ b/libavformat/avio.c
@@ -625,13 +625,15 @@ int64_t ffurl_size(URLContext *h)
int ffurl_get_file_handle(URLContext *h)
{
- if (!h->prot->url_get_file_handle)
+ if (!h || !h->prot || !h->prot->url_get_file_handle)
return -1;
return h->prot->url_get_file_handle(h);
}
int ffurl_get_multi_file_handle(URLContext *h, int **handles, int *numhandles)
{
+ if (!h || !h->prot)
+ return AVERROR(ENOSYS);
if (!h->prot->url_get_multi_file_handle) {
if (!h->prot->url_get_file_handle)
return AVERROR(ENOSYS);
@@ -647,15 +649,15 @@ int ffurl_get_multi_file_handle(URLContext *h, int **handles, int *numhandles)
int ffurl_get_short_seek(URLContext *h)
{
- if (!h->prot->url_get_short_seek)
+ if (!h || !h->prot || !h->prot->url_get_short_seek)
return AVERROR(ENOSYS);
return h->prot->url_get_short_seek(h);
}
int ffurl_shutdown(URLContext *h, int flags)
{
- if (!h->prot->url_shutdown)
- return AVERROR(EINVAL);
+ if (!h || !h->prot || !h->prot->url_shutdown)
+ return AVERROR(ENOSYS);
return h->prot->url_shutdown(h, flags);
}