applehttp: Handle a .. path segment in the base url
authorMartin Storsjö <martin@martin.st>
Sat, 2 Oct 2010 21:58:36 +0000 (21:58 +0000)
committerMartin Storsjö <martin@martin.st>
Sat, 2 Oct 2010 21:58:36 +0000 (21:58 +0000)
Originally committed as revision 25318 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavformat/applehttp.c

index f8f1f39..f2f5838 100644 (file)
@@ -104,6 +104,12 @@ static void make_absolute_url(char *buf, int size, const char *base,
     while (av_strstart(rel, "../", NULL) && sep) {
         sep[0] = '\0';
         sep = strrchr(buf, '/');
+        /* If the next directory name to pop off is "..", break here */
+        if (!strcmp(sep ? &sep[1] : buf, "..")) {
+            /* Readd the slash we just removed */
+            av_strlcat(buf, "/", size);
+            break;
+        }
         if (sep)
             sep[1] = '\0';
         else