Title: [161562] trunk/Source/_javascript_Core
Revision
161562
Author
[email protected]
Date
2014-01-09 10:46:20 -0800 (Thu, 09 Jan 2014)

Log Message

Regression: failing RegExp tests on 32 bit architectures.
https://bugs.webkit.org/show_bug.cgi?id=126699

Patch by Balazs Kilvady <[email protected]> on 2014-01-09
Reviewed by Michael Saboff.

Fix setRegExpConstructor functions for 32 bit architectures.

* runtime/RegExpConstructor.cpp:
(JSC::setRegExpConstructorInput):
(JSC::setRegExpConstructorMultiline):

Modified Paths

Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (161561 => 161562)


--- trunk/Source/_javascript_Core/ChangeLog	2014-01-09 18:34:57 UTC (rev 161561)
+++ trunk/Source/_javascript_Core/ChangeLog	2014-01-09 18:46:20 UTC (rev 161562)
@@ -1,3 +1,16 @@
+2014-01-09  Balazs Kilvady  <[email protected]>
+
+        Regression: failing RegExp tests on 32 bit architectures.
+        https://bugs.webkit.org/show_bug.cgi?id=126699
+
+        Reviewed by Michael Saboff.
+
+        Fix setRegExpConstructor functions for 32 bit architectures.
+
+        * runtime/RegExpConstructor.cpp:
+        (JSC::setRegExpConstructorInput):
+        (JSC::setRegExpConstructorMultiline):
+
 2014-01-09  Commit Queue  <[email protected]>
 
         Unreviewed, rolling out r161540.

Modified: trunk/Source/_javascript_Core/runtime/RegExpConstructor.cpp (161561 => 161562)


--- trunk/Source/_javascript_Core/runtime/RegExpConstructor.cpp	2014-01-09 18:34:57 UTC (rev 161561)
+++ trunk/Source/_javascript_Core/runtime/RegExpConstructor.cpp	2014-01-09 18:46:20 UTC (rev 161562)
@@ -45,8 +45,8 @@
 static EncodedJSValue regExpConstructorDollar8(ExecState*, EncodedJSValue, EncodedJSValue, PropertyName);
 static EncodedJSValue regExpConstructorDollar9(ExecState*, EncodedJSValue, EncodedJSValue, PropertyName);
 
-static void setRegExpConstructorInput(ExecState*, JSObject*, JSValue);
-static void setRegExpConstructorMultiline(ExecState*, JSObject*, JSValue);
+static void setRegExpConstructorInput(ExecState*, EncodedJSValue, EncodedJSValue);
+static void setRegExpConstructorMultiline(ExecState*, EncodedJSValue, EncodedJSValue);
 
 } // namespace JSC
 
@@ -243,14 +243,14 @@
     lookupPut<RegExpConstructor, InternalFunction>(exec, propertyName, value, ExecState::regExpConstructorTable(exec), jsCast<RegExpConstructor*>(cell), slot);
 }
 
-void setRegExpConstructorInput(ExecState* exec, JSObject* baseObject, JSValue value)
+void setRegExpConstructorInput(ExecState* exec, EncodedJSValue baseObject, EncodedJSValue value)
 {
-    asRegExpConstructor(baseObject)->setInput(exec, value.toString(exec));
+    asRegExpConstructor(asObject(JSValue::decode(baseObject)))->setInput(exec, JSValue::decode(value).toString(exec));
 }
 
-void setRegExpConstructorMultiline(ExecState* exec, JSObject* baseObject, JSValue value)
+void setRegExpConstructorMultiline(ExecState* exec, EncodedJSValue baseObject, EncodedJSValue value)
 {
-    asRegExpConstructor(baseObject)->setMultiline(value.toBoolean(exec));
+    asRegExpConstructor(asObject(JSValue::decode(baseObject)))->setMultiline(JSValue::decode(value).toBoolean(exec));
 }
 
 // ECMA 15.10.4
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to