[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677

darin darin at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 08:38:01 UTC 2009


The following commit has been merged in the debian/unstable branch:
commit 7b70a6ad47370079b34152b8c0ecdef07d373ad4
Author: darin <darin at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Sun May 2 16:13:40 2004 +0000

            Reviewed by Ken.
    
            - fixed <rdar://problem/3640419>: "_webkit_stringByReplacingValidPercentEscapes does not handle %00 properly"
    
            * Misc.subproj/WebNSURLExtras.m: (-[NSString _webkit_stringByReplacingValidPercentEscapes]):
            Use the function in NSURL instead of implementing our own here.
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@6530 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebKit/ChangeLog b/WebKit/ChangeLog
index e7dfc4b..3ed5ac4 100644
--- a/WebKit/ChangeLog
+++ b/WebKit/ChangeLog
@@ -1,3 +1,12 @@
+2004-05-02  Darin Adler  <darin at apple.com>
+
+        Reviewed by Ken.
+
+        - fixed <rdar://problem/3640419>: "_webkit_stringByReplacingValidPercentEscapes does not handle %00 properly"
+
+        * Misc.subproj/WebNSURLExtras.m: (-[NSString _webkit_stringByReplacingValidPercentEscapes]):
+        Use the function in NSURL instead of implementing our own here.
+
 2004-04-30  John Sullivan  <sullivan at apple.com>
 
         * WebView.subproj/WebView.m:
diff --git a/WebKit/Misc.subproj/WebNSURLExtras.m b/WebKit/Misc.subproj/WebNSURLExtras.m
index 23f651c..f874b7b 100644
--- a/WebKit/Misc.subproj/WebNSURLExtras.m
+++ b/WebKit/Misc.subproj/WebNSURLExtras.m
@@ -696,30 +696,8 @@ static NSString *mapHostNames(NSString *string, BOOL encode)
 
 - (NSString *)_webkit_stringByReplacingValidPercentEscapes
 {
-    const char *before = [self UTF8String];
-    char *after = malloc(strlen(before) + 1);
-    
-    const char *p = before;
-    char *q = after;
-    
-    while (*p) {
-        if (*p == '%' && isHexDigit(p[1]) && isHexDigit(p[2])) {
-            *q++ = (hexDigitValue(p[1]) << 4) | hexDigitValue(p[2]);
-            p += 3;
-        } else {
-            *q++ = *p++;
-        }
-    }
-    *q = '\0';
-    
-    NSString *result = [NSString stringWithUTF8String:after];
-    free(after);
-    
-    // FIXME: This returns the original string with all the % escapes intact
-    // if there are any illegal UTF-8 sequences. Instead, we should detect illegal
-    // UTF-8 sequences while decoding above and either leave them as % escapes
-    // (but decode all the others) or turn them in to ? characters.
-    return result ? result : self;
+    NSString *s = [self stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
+    return s ? s : self;
 }
 
 - (NSString *)_webkit_scriptIfJavaScriptURL

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list