> 在 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? > >> 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