diff options
author | Steven Liu <lq@chinaffmpeg.org> | 2017-12-28 12:07:22 +0800 |
---|---|---|
committer | Steven Liu <lq@chinaffmpeg.org> | 2017-12-28 12:07:22 +0800 |
commit | be4dfbf7b71e44a53ca8da882a081e35ea134c83 (patch) | |
tree | 3af9ff9501aecd001550849b4b9a099d60f09767 /libavformat/avio.c | |
parent | 658bdc67715b3fbf75f92c7a459272149e3859df (diff) | |
download | ffmpeg-be4dfbf7b71e44a53ca8da882a081e35ea134c83.tar.gz |
avformat/avio: check input URLContext value NULL
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Reviewed-by: Karthick Jeyapal <kjeyapal@akamai.com>
Diffstat (limited to 'libavformat/avio.c')
-rw-r--r-- | libavformat/avio.c | 10 |
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); } |