[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 07:43:49 UTC 2009


The following commit has been merged in the debian/unstable branch:
commit 7b61d5df371736cad7c18a65fa975530be3da935
Author: darin <darin at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Mon Jun 2 18:42:40 2003 +0000

            Reviewed by Ken.
    
    	- fixed 3256787 -- HOMEPAGE:\000 characters being added by Safarin in Form submission,
            causing an exception in property list parsing
    
            * kwq/KWQTextCodec.mm: (QTextCodec::fromUnicode): Encode \ as 5C instead of 815F
            when encoding Shift-JIS. This should make the Apple Store work again. The only thing
            we lose is the ability to send an actual Shift-JIS backslash (815F), but I think that
            is almost never needed. In other browsers you can't even type a backslash in Shift-JIS.
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@4464 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog-2003-10-25 b/WebCore/ChangeLog-2003-10-25
index a9c7ee6..50d9c82 100644
--- a/WebCore/ChangeLog-2003-10-25
+++ b/WebCore/ChangeLog-2003-10-25
@@ -1,3 +1,15 @@
+2003-06-02  Darin Adler  <darin at apple.com>
+
+        Reviewed by Ken.
+
+	- fixed 3256787 -- HOMEPAGE:\000 characters being added by Safarin in Form submission,
+        causing an exception in property list parsing
+
+        * kwq/KWQTextCodec.mm: (QTextCodec::fromUnicode): Encode \ as 5C instead of 815F
+        when encoding Shift-JIS. This should make the Apple Store work again. The only thing
+        we lose is the ability to send an actual Shift-JIS backslash (815F), but I think that
+        is almost never needed. In other browsers you can't even type a backslash in Shift-JIS.
+
 2003-06-02  Ken Kocienda  <kocienda at apple.com>
 
         Reviewed by NOBODY (OOPS!).
@@ -24,8 +36,7 @@
 
 	- fixed 3169067 - PEOPLESOFT: left frame missing; frame RenderRoot height and width are both zero
 
-        * khtml/khtml_part.cpp:
-        (KHTMLPart::gotoAnchor):
+        * khtml/khtml_part.cpp: (KHTMLPart::gotoAnchor): Update layout before scrolling.
 
 2003-05-30  Maciej Stachowiak  <mjs at apple.com>
 
diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index a9c7ee6..50d9c82 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -1,3 +1,15 @@
+2003-06-02  Darin Adler  <darin at apple.com>
+
+        Reviewed by Ken.
+
+	- fixed 3256787 -- HOMEPAGE:\000 characters being added by Safarin in Form submission,
+        causing an exception in property list parsing
+
+        * kwq/KWQTextCodec.mm: (QTextCodec::fromUnicode): Encode \ as 5C instead of 815F
+        when encoding Shift-JIS. This should make the Apple Store work again. The only thing
+        we lose is the ability to send an actual Shift-JIS backslash (815F), but I think that
+        is almost never needed. In other browsers you can't even type a backslash in Shift-JIS.
+
 2003-06-02  Ken Kocienda  <kocienda at apple.com>
 
         Reviewed by NOBODY (OOPS!).
@@ -24,8 +36,7 @@
 
 	- fixed 3169067 - PEOPLESOFT: left frame missing; frame RenderRoot height and width are both zero
 
-        * khtml/khtml_part.cpp:
-        (KHTMLPart::gotoAnchor):
+        * khtml/khtml_part.cpp: (KHTMLPart::gotoAnchor): Update layout before scrolling.
 
 2003-05-30  Maciej Stachowiak  <mjs at apple.com>
 
diff --git a/WebCore/kwq/KWQTextCodec.mm b/WebCore/kwq/KWQTextCodec.mm
index e3c2645..772da33 100644
--- a/WebCore/kwq/KWQTextCodec.mm
+++ b/WebCore/kwq/KWQTextCodec.mm
@@ -134,24 +134,39 @@ QCString QTextCodec::fromUnicode(const QString &qcs) const
     CFStringEncoding encoding = effectiveEncoding(_encoding);
 
     QString copy;
+    bool usingCopy = false;
     bool doingTildeWorkaround = false;
 
     // This is a hack to work around bug 3254512 -- tilde does not make the round trip when encoding/decoding Shift-JIS.
     // We change decoded tilde characters into U+0001 because that will survive the decoding process (turn into ASCII 0x01)
     // and we don't care about preserving U+0001 characters; they should never occur.
+
+    // The other hack is to make \ character turn into 5C instead of 815F when converting to Shift-JIS.
+    // Although 815F is correct, strictly speaking, if we end up with a 5C, we almost always want to send
+    // it back as a 5C; there's no way to type a \ on a Japanese keyboard.
+
     switch (encoding) {
         case kCFStringEncodingShiftJIS_X0213_00:
         case kCFStringEncodingEUC_JP: {
             const QChar decodedTilde(0x203E);
             if (qcs.find(decodedTilde) != -1) {
                 doingTildeWorkaround = true;
+                usingCopy = true;
                 copy = qcs;
                 copy.replace(decodedTilde, 0x0001);
             }
+            if (qcs.find('\\') != -1) {
+                if (!usingCopy) {
+                    usingCopy = true;
+                    copy = qcs;
+                }
+                const QChar decodedBackslash(0x00A5);
+                copy.replace('\\', decodedBackslash);
+            }
         }
     }
 
-    CFStringRef cfs = doingTildeWorkaround ? copy.getCFString() : qcs.getCFString();
+    CFStringRef cfs = usingCopy ? copy.getCFString() : qcs.getCFString();
 
     CFRange range = CFRangeMake(0, CFStringGetLength(cfs));
     CFIndex bufferLength;

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list