[V8] Improve Replaceable extended attribute
Created attachment 153094 [details] Patch
This issue was exposed by V8 fixing their bug with read only properties.
Comment on attachment 153094 [details] Patch Interesting.
Comment on attachment 153094 [details] Patch Attachment 153094 [details] did not pass chromium-ews (chromium-xvfb): Output: http://queues.webkit.org/results/13274629 New failing tests: fast/dom/Window/get-set-properties.html fast/dom/Window/window-property-shadowing.html
Created attachment 153104 [details] Archive of layout-test-results from gce-cr-linux-08 The attached test failures were seen while running run-webkit-tests on the chromium-ews. Bot: gce-cr-linux-08 Port: <class 'webkitpy.common.config.ports.ChromiumXVFBPort'> Platform: Linux-2.6.39-gcg-201203291735-x86_64-with-Ubuntu-10.04-lucid
I reverted the removal of the platform specific expectations. I had another change that touched readonly and I got this file on the wrong branch.
Created attachment 153120 [details] Patch for landing
Comment on attachment 153120 [details] Patch for landing Clearing flags on attachment: 153120 Committed r123047: <http://trac.webkit.org/changeset/123047>
All reviewed patches have been landed. Closing bug.
*** Bug 91148 has been marked as a duplicate of this bug. ***
One question, if people are still following this bug. Why even non replaceable attributes are having replaceable setters with this change and both treated same way? e.g toolbar is replaceable but NodeList is not but both still have replaceable setters in V8 bindings V8DOMWindow.cpp. Just wanted to confirm if it is something that we intended or is it a bug?
(In reply to comment #11) > Just wanted to confirm if it is something that we intended or is it a bug? That is intended. What bug are you seeing?
(In reply to comment #12) > (In reply to comment #11) > > Just wanted to confirm if it is something that we intended or is it a bug? > > That is intended. What bug are you seeing? Replaceable attribute looks to be behaving same as non-replaceable. from the IDL spec what I understand is, when we overwrite replaceable attribute and then again delete replaced variable, it should fall back to original attribute. And in case of non-replaceable, it shouldn't fall back to original after delete. Example: toolbar = document.getElementById('tmp').style.position alert (toolrbar); delete toolbar; alert (toolrbar); last alert shows, 'object BarInfo' which is correct as toolbar is replaceable. And for: NodeList = document.getElementById('tmp').style.position alert (NodeList); delete NodeList; alert (NodeList); last alert should show 'undefined' as NodeList is not replaceable attribute but it shows valid value like 'nodelist constructor'.
(In reply to comment #13) delete is just broken. I filed bug 104263
(In reply to comment #14) > (In reply to comment #13) > > delete is just broken. I filed bug 104263 Ok, Thanks!