* kjs/string_object.cpp: (StringProtoFuncImp::call): Remove strange use of...
authordarin <darin@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 27 Sep 2004 01:54:30 +0000 (01:54 +0000)
committerdarin <darin@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 27 Sep 2004 01:54:30 +0000 (01:54 +0000)
        low() to get Unicode value of character, and just use unicode().

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@7685 268f45cc-cd09-0410-ab3c-d52691b4dbfc

JavaScriptCore/ChangeLog
JavaScriptCore/kjs/string_object.cpp

index c2d5a48..0cc60de 100644 (file)
@@ -1,5 +1,10 @@
 2004-09-26  Darin Adler  <darin@apple.com>
 
+        * kjs/string_object.cpp: (StringProtoFuncImp::call): Remove strange use of high() and
+        low() to get Unicode value of character, and just use unicode().
+
+2004-09-26  Darin Adler  <darin@apple.com>
+
         - refine charAt/charCodeAt fix slightly
 
         * kjs/string_object.cpp: (StringProtoFuncImp::call): Treat undefined the same was as an
index d1018db..cc74c92 100644 (file)
@@ -375,10 +375,9 @@ Value StringProtoFuncImp::call(ExecState *exec, Object &thisObj, const List &arg
     // Other browsers treat an omitted parameter as 0 rather than NaN.
     // That doesn't match the ECMA standard, but is needed for site compatibility.
     dpos = a0.isA(UndefinedType) ? 0 : a0.toInteger(exec);
-    if (dpos >= 0 && dpos < len) { // false for NaN
-      UChar c = s[static_cast<int>(dpos)];
-      d = (c.high() << 8) + c.low();
-    } else
+    if (dpos >= 0 && dpos < len) // false for NaN
+      d = s[static_cast<int>(dpos)].unicode();
+    else
       d = NaN;
     result = Number(d);
     break;