On 2017/11/20 15:35, 刘歧 wrote: > >> 在 2017年11月20日,15:23,Jun Zhao <mypopy...@gmail.com> 写道: >> >> >> >> On 2017/11/20 14:45, Steven Liu wrote: >>> fix ticket id: #6846 >>> >>> Signed-off-by: Steven Liu <l...@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) >> I think (!h && !h->prot && !h->prot->url_get_file_handle) more better >> than this > maybe you mean (!h || !h->port || !h->prot->url_get_file_handle) , is it? No, I means if (!h && !h->prot && !h->prot->url_get_file_handle) Do somthing else return error;
>>> 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); _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel