[FFmpeg-cvslog] avformat/url: check return value of strchr

Steven Liu git at videolan.org
Sun Jun 14 22:24:23 EEST 2020


ffmpeg | branch: release/4.3 | Steven Liu <lq at chinaffmpeg.org> | Thu May 28 10:41:25 2020 +0800| [cfec756a6d63163ef7982c53b11e9f9bdb0555b0] | committer: Marton Balint

avformat/url: check return value of strchr

fix ticket: 8687
workflow should return if there have no value of strchr

Signed-off-by: Steven Liu <lq at chinaffmpeg.org>
(cherry picked from commit 029ff31af6801dd2bca1b543575e17eaaa6b0772)

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=cfec756a6d63163ef7982c53b11e9f9bdb0555b0
---

 libavformat/url.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/libavformat/url.c b/libavformat/url.c
index 6956f6dc10..20463a6674 100644
--- a/libavformat/url.c
+++ b/libavformat/url.c
@@ -90,6 +90,8 @@ static void trim_double_dot_url(char *buf, const char *rel, int size)
     if (p && (sep = strstr(p, "://"))) {
         sep += 3;
         root = strchr(sep, '/');
+        if (!root)
+            return;
     }
 
     /* set new current position if the root node is changed */
@@ -150,6 +152,7 @@ void ff_make_absolute_url(char *buf, int size, const char *base,
     }
     /* If rel actually is an absolute url, just copy it */
     if (!base || strstr(rel, "://") || rel[0] == '/') {
+        memset(buf, 0, size);
         trim_double_dot_url(buf, rel, size);
         return;
     }
@@ -177,6 +180,8 @@ void ff_make_absolute_url(char *buf, int size, const char *base,
         if (sep) {
             sep += 3;
             root = strchr(sep, '/');
+            if (!root)
+                return;
         }
     }
 



More information about the ffmpeg-cvslog mailing list