]> granicus.if.org Git - rtmpdump/commitdiff
Revert prev commit, use \xx for escaping spaces
authorhyc <hyc@400ebc74-4327-4243-bc38-086b20814532>
Sun, 28 Mar 2010 20:14:52 +0000 (20:14 +0000)
committerhyc <hyc@400ebc74-4327-4243-bc38-086b20814532>
Sun, 28 Mar 2010 20:14:52 +0000 (20:14 +0000)
git-svn-id: svn://svn.mplayerhq.hu/rtmpdump/trunk@410 400ebc74-4327-4243-bc38-086b20814532

librtmp/rtmp.c

index ffe32e89b1ba6e749d83aefe0dd58e64fb3be58a..e0f0c0a16ff0d8b370310d33e25ed5b5b34aab22 100644 (file)
@@ -645,25 +645,15 @@ bool RTMP_SetupURL(RTMP *r, char *url)
       arg.av_len = strlen(p2);
     }
 
-    /* Decode embedded spaces. Spaces are encoded as TAB+Ctrl-A.
-     * TABs are encoded as TAB+Ctrl-B. For TAB+anything else the
-     * TAB is dropped.
-     */
+    /* unescape */
     port = arg.av_len;
     for (p1=p2; port >0;) {
-      if (*p1 == 0x08) {
-        if (p1[1] == 0x01) {
-         *p2++ = ' ';
-         port -= 2;
-         p1 += 2;
-       } else if (p1[1] == 0x02) {
-         *p2++ = 0x08;
-         port -= 2;
-         p1 += 2;
-       } else {
-         p1++;
-         port--;
-       }
+      if (*p1 == '\\') {
+       int c;
+       sscanf(p1+1, "%02x", &c);
+       *p2++ = c;
+       port -= 3;
+       p1 += 3;
       } else {
        *p2++ = *p1++;
        port--;