avformat/dashdec: Fix strlen(rep_id_val) with it being NULL
authorMichael Niedermayer <michael@niedermayer.cc>
Sat, 18 Aug 2018 00:19:51 +0000 (02:19 +0200)
committerMichael Niedermayer <michael@niedermayer.cc>
Sun, 19 Aug 2018 00:47:33 +0000 (02:47 +0200)
Fixes: dash-crash-da39a3ee5e6b4b0d3255bfef95601890afd80709.xml

Found-by: Paul Ch <paulcher@icloud.com>
Reviewed-by: Steven Liu <lq@chinaffmpeg.org>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
libavformat/dashdec.c

index f851bbf..c6dddeb 100644 (file)
@@ -857,7 +857,9 @@ static int parse_manifest_representation(AVFormatContext *s, const char *url,
         baseurl_nodes[3] = representation_baseurl_node;
 
         ret = resolve_content_path(s, url, &c->max_url_size, baseurl_nodes, 4);
-        c->max_url_size = aligned(c->max_url_size  + strlen(rep_id_val) + strlen(rep_bandwidth_val));
+        c->max_url_size = aligned(c->max_url_size
+                                  + (rep_id_val ? strlen(rep_id_val) : 0)
+                                  + (rep_bandwidth_val ? strlen(rep_bandwidth_val) : 0));
         if (ret == AVERROR(ENOMEM) || ret == 0) {
             goto end;
         }