Do not include "mp4:" prefix from RTMP URL into "app" path or second time
authorLars Täuber <lars.taeuber@gmx.net>
Thu, 17 Sep 2009 05:31:02 +0000 (05:31 +0000)
committerKostya Shishkov <kostya.shishkov@gmail.com>
Thu, 17 Sep 2009 05:31:02 +0000 (05:31 +0000)
into playpath.

Patch by Lars Täuber
(<$name> . <$lastname with umlaut replaced with diphtong> @ <gmx> . <net>)

Originally committed as revision 19894 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavformat/rtmpproto.c

index 470e6fe..55bd990 100644 (file)
@@ -611,8 +611,9 @@ static int rtmp_open(URLContext *s, const char *uri, int flags)
                 fname = path + 1;
                 app[0] = '\0';
             } else {
+                char *c = strchr(p + 1, ':');
                 fname = strchr(p + 1, '/');
-                if (!fname) {
+                if (!fname || c < fname) {
                     fname = p + 1;
                     av_strlcpy(app, path + 1, p - path);
                 } else {
@@ -621,8 +622,9 @@ static int rtmp_open(URLContext *s, const char *uri, int flags)
                 }
             }
         }
-        if (!strcmp(fname + strlen(fname) - 4, ".f4v") ||
-            !strcmp(fname + strlen(fname) - 4, ".mp4")) {
+        if (!strchr(fname, ':') &&
+            (!strcmp(fname + strlen(fname) - 4, ".f4v") ||
+             !strcmp(fname + strlen(fname) - 4, ".mp4"))) {
             memcpy(rt->playpath, "mp4:", 5);
         } else {
             rt->playpath[0] = 0;