[FFmpeg-devel] [PATCH] avformat/avio: check input URLContext value NULL

Steven Liu lq at chinaffmpeg.org
Mon Nov 20 08:45:51 EET 2017


fix ticket id: #6846

Signed-off-by: Steven Liu <lq at chinaffmpeg.org>
---
 libavformat/avio.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/libavformat/avio.c b/libavformat/avio.c
index 4dc468350c..e719326660 100644
--- a/libavformat/avio.c
+++ b/libavformat/avio.c
@@ -625,6 +625,8 @@ int64_t ffurl_size(URLContext *h)
 
 int ffurl_get_file_handle(URLContext *h)
 {
+    if (!h)
+        return AVERROR(EINVAL);
     if (!h->prot->url_get_file_handle)
         return -1;
     return h->prot->url_get_file_handle(h);
@@ -632,6 +634,8 @@ int ffurl_get_file_handle(URLContext *h)
 
 int ffurl_get_multi_file_handle(URLContext *h, int **handles, int *numhandles)
 {
+    if (!h)
+        return AVERROR(EINVAL);
     if (!h->prot->url_get_multi_file_handle) {
         if (!h->prot->url_get_file_handle)
             return AVERROR(ENOSYS);
@@ -647,6 +651,8 @@ int ffurl_get_multi_file_handle(URLContext *h, int **handles, int *numhandles)
 
 int ffurl_get_short_seek(URLContext *h)
 {
+    if (!h)
+        return AVERROR(EINVAL);
     if (!h->prot->url_get_short_seek)
         return AVERROR(ENOSYS);
     return h->prot->url_get_short_seek(h);
@@ -654,6 +660,8 @@ int ffurl_get_short_seek(URLContext *h)
 
 int ffurl_shutdown(URLContext *h, int flags)
 {
+    if (!h)
+        return AVERROR(EINVAL);
     if (!h->prot->url_shutdown)
         return AVERROR(EINVAL);
     return h->prot->url_shutdown(h, flags);
-- 
2.13.6 (Apple Git-96)





More information about the ffmpeg-devel mailing list