[SCM] WebKit Debian packaging branch, webkit-1.3, updated. upstream/1.3.7-4207-g178b198

paroga at webkit.org paroga at webkit.org
Mon Feb 21 00:34:58 UTC 2011


The following commit has been merged in the webkit-1.3 branch:
commit de99cdf7de9ceb8aa7b221e99125f422398a785a
Author: paroga at webkit.org <paroga at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Tue Feb 1 23:32:46 2011 +0000

    2011-02-01  Sheriff Bot  <webkit.review.bot at gmail.com>
    
            Unreviewed, rolling out r77297.
            http://trac.webkit.org/changeset/77297
            https://bugs.webkit.org/show_bug.cgi?id=53538
    
            caused leopard crashes (Requested by paroga on #webkit).
    
            * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
            * wtf/text/AtomicString.cpp:
            (WTF::AtomicString::fromUTF8):
            * wtf/unicode/UTF8.cpp:
            (WTF::Unicode::calculateStringHashFromUTF8):
            * wtf/unicode/UTF8.h:
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@77324 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/Source/JavaScriptCore/ChangeLog b/Source/JavaScriptCore/ChangeLog
index 0a6be32..9109d42 100644
--- a/Source/JavaScriptCore/ChangeLog
+++ b/Source/JavaScriptCore/ChangeLog
@@ -1,3 +1,18 @@
+2011-02-01  Sheriff Bot  <webkit.review.bot at gmail.com>
+
+        Unreviewed, rolling out r77297.
+        http://trac.webkit.org/changeset/77297
+        https://bugs.webkit.org/show_bug.cgi?id=53538
+
+        caused leopard crashes (Requested by paroga on #webkit).
+
+        * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
+        * wtf/text/AtomicString.cpp:
+        (WTF::AtomicString::fromUTF8):
+        * wtf/unicode/UTF8.cpp:
+        (WTF::Unicode::calculateStringHashFromUTF8):
+        * wtf/unicode/UTF8.h:
+
 2011-02-01  Sam Weinig  <sam at webkit.org>
 
         Fix Mac production builds.
diff --git a/Source/JavaScriptCore/JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def b/Source/JavaScriptCore/JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def
index bec2ba6..5508ce1 100644
--- a/Source/JavaScriptCore/JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def
+++ b/Source/JavaScriptCore/JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def
@@ -64,7 +64,6 @@ EXPORTS
     ?byteSize at SourceProviderCache@JSC@@QBEIXZ
     ?calculateDSTOffset at WTF@@YANNN at Z
     ?calculateStringHashFromUTF8 at Unicode@WTF@@YAIPBD0AAI at Z
-    ?calculateStringHashAndLengthFromUTF8 at Unicode@WTF@@YAIPBDAAI1 at Z
     ?calculateUTCOffset at WTF@@YAHXZ
     ?calculatedFunctionName at DebuggerCallFrame@JSC@@QBE?AVUString at 2@XZ
     ?call at JSC@@YA?AVJSValue at 1@PAVExecState at 1@V21 at W4CallType@1 at ABTCallData@1 at 1ABVArgList@1@@Z
diff --git a/Source/JavaScriptCore/wtf/text/AtomicString.cpp b/Source/JavaScriptCore/wtf/text/AtomicString.cpp
index b584f67..dd8d66c 100644
--- a/Source/JavaScriptCore/wtf/text/AtomicString.cpp
+++ b/Source/JavaScriptCore/wtf/text/AtomicString.cpp
@@ -376,17 +376,7 @@ AtomicString AtomicString::fromUTF8(const char* characters)
 {
     if (!characters)
         return AtomicString();
-
-    HashAndUTF8Characters buffer;
-    buffer.characters = characters;
-    buffer.hash = calculateStringHashAndLengthFromUTF8(characters, buffer.length, buffer.utf16Length);
-
-    if (!buffer.hash)
-        return AtomicString();
-
-    AtomicString atomicString;
-    atomicString.m_string = addToStringTable<HashAndUTF8Characters, HashAndUTF8CharactersTranslator>(buffer);
-    return atomicString;
+    return fromUTF8(characters, strlen(characters));
 }
 
 } // namespace WTF
diff --git a/Source/JavaScriptCore/wtf/unicode/UTF8.cpp b/Source/JavaScriptCore/wtf/unicode/UTF8.cpp
index 4c3738b..37b1836 100644
--- a/Source/JavaScriptCore/wtf/unicode/UTF8.cpp
+++ b/Source/JavaScriptCore/wtf/unicode/UTF8.cpp
@@ -314,33 +314,25 @@ ConversionResult convertUTF8ToUTF16(
     return result;
 }
 
-static inline unsigned calculateStringHashAndLengthFromUTF8Internal(const char* data, const char* dataEnd, unsigned& dataLength, unsigned& utf16Length)
+unsigned calculateStringHashFromUTF8(const char* data, const char* dataEnd, unsigned& utf16Length)
 {
     if (!data)
         return 0;
 
     WTF::StringHasher stringHasher;
-    dataLength = 0;
     utf16Length = 0;
 
-    while (data < dataEnd || (!dataEnd && *data)) {
+    while (data < dataEnd) {
         if (isASCII(*data)) {
             stringHasher.addCharacter(*data++);
-            dataLength++;
             utf16Length++;
             continue;
         }
 
         int utf8SequenceLength = inlineUTF8SequenceLengthNonASCII(*data);
-        dataLength += utf8SequenceLength;
 
-        if (!dataEnd) {
-            for (int i = 1; i < utf8SequenceLength; ++i) {
-                if (!data[i])
-                    return 0;
-            }
-        } else if (dataEnd - data < utf8SequenceLength)
-            return 0;
+        if (dataEnd - data < utf8SequenceLength)
+            return false;
 
         if (!isLegalUTF8(reinterpret_cast<const unsigned char*>(data), utf8SequenceLength))
             return 0;
@@ -365,17 +357,6 @@ static inline unsigned calculateStringHashAndLengthFromUTF8Internal(const char*
     return stringHasher.hash();
 }
 
-unsigned calculateStringHashFromUTF8(const char* data, const char* dataEnd, unsigned& utf16Length)
-{
-    unsigned dataLength;
-    return calculateStringHashAndLengthFromUTF8Internal(data, dataEnd, dataLength, utf16Length);
-}
-
-unsigned calculateStringHashAndLengthFromUTF8(const char* data, unsigned& dataLength, unsigned& utf16Length)
-{
-    return calculateStringHashAndLengthFromUTF8Internal(data, 0, dataLength, utf16Length);
-}
-
 bool equalUTF16WithUTF8(const UChar* a, const UChar* aEnd, const char* b, const char* bEnd)
 {
     while (b < bEnd) {
diff --git a/Source/JavaScriptCore/wtf/unicode/UTF8.h b/Source/JavaScriptCore/wtf/unicode/UTF8.h
index bbfaa84..1f4baca 100644
--- a/Source/JavaScriptCore/wtf/unicode/UTF8.h
+++ b/Source/JavaScriptCore/wtf/unicode/UTF8.h
@@ -71,7 +71,6 @@ namespace Unicode {
                     char** targetStart, char* targetEnd, bool strict = true);
 
     unsigned calculateStringHashFromUTF8(const char* data, const char* dataEnd, unsigned& utf16Length);
-    unsigned calculateStringHashAndLengthFromUTF8(const char* data, unsigned& dataLength, unsigned& utf16Length);
 
     bool equalUTF16WithUTF8(const UChar* a, const UChar* aEnd, const char* b, const char* bEnd);
 

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list