Title: [154444] trunk/Tools
Revision
154444
Author
[email protected]
Date
2013-08-22 05:46:16 -0700 (Thu, 22 Aug 2013)

Log Message

[Qt] DRT bug revealed/caused by r154300
https://bugs.webkit.org/show_bug.cgi?id=120151

Reviewed by Simon Hausmann.

Since QtInstance had an implementation of getOwnPropertySlot and not getOwnPropertyDescriptor,
the behavior of getOwnPropertyDescriptor changed when it got implemented using getOwnPropertySlot
in r154300.

DRT relied on getOwnPropertyDescriptor returning undefined for JS set properties to distinguish
between native Qt methods and JSC bound methods. This patch changes the check to see if the
property is writable since the Qt methods are ReadOnly.

* DumpRenderTree/qt/DumpRenderTreeQt.cpp:
(DumpRenderTree::initJSObjects):

Modified Paths

Diff

Modified: trunk/Tools/ChangeLog (154443 => 154444)


--- trunk/Tools/ChangeLog	2013-08-22 12:38:19 UTC (rev 154443)
+++ trunk/Tools/ChangeLog	2013-08-22 12:46:16 UTC (rev 154444)
@@ -1,3 +1,21 @@
+2013-08-22  Allan Sandfeld Jensen  <[email protected]>
+
+        [Qt] DRT bug revealed/caused by r154300
+        https://bugs.webkit.org/show_bug.cgi?id=120151
+
+        Reviewed by Simon Hausmann.
+
+        Since QtInstance had an implementation of getOwnPropertySlot and not getOwnPropertyDescriptor,
+        the behavior of getOwnPropertyDescriptor changed when it got implemented using getOwnPropertySlot
+        in r154300.
+
+        DRT relied on getOwnPropertyDescriptor returning undefined for JS set properties to distinguish
+        between native Qt methods and JSC bound methods. This patch changes the check to see if the 
+        property is writable since the Qt methods are ReadOnly.
+
+        * DumpRenderTree/qt/DumpRenderTreeQt.cpp:
+        (DumpRenderTree::initJSObjects):
+
 2013-08-21  Joseph Pecoraro  <[email protected]>
 
         <https://webkit.org/b/120134> [Tools] lldb_webkit.py helpers is incorrectly printing 8bit Strings

Modified: trunk/Tools/DumpRenderTree/qt/DumpRenderTreeQt.cpp (154443 => 154444)


--- trunk/Tools/DumpRenderTree/qt/DumpRenderTreeQt.cpp	2013-08-22 12:38:19 UTC (rev 154443)
+++ trunk/Tools/DumpRenderTree/qt/DumpRenderTreeQt.cpp	2013-08-22 12:46:16 UTC (rev 154444)
@@ -773,7 +773,7 @@
                                                                                    "    }\n"
                                                                                    "for (var prop in this.jscBasedTestRunner) {\n"
                                                                                    "    var pd = Object.getOwnPropertyDescriptor(this.qtBasedTestRunner, prop);\n"
-                                                                                   "    if (pd !== undefined) continue;\n"
+                                                                                   "    if (pd !== undefined && !pd.writable) continue;\n"
                                                                                    "    pd = Object.getOwnPropertyDescriptor(this.jscBasedTestRunner, prop);\n"
                                                                                    "    this.qtBasedTestRunner[prop] = bind(this.jscBasedTestRunner[prop], this.jscBasedTestRunner);\n"
                                                                                    "}\n"
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to