Navigator.geolocation should not be marked a [Replaceable]: https://dev.w3.org/geo/api/spec-source.html#geolocation_interface This was done as a workaround for an Amazon App bug in Bug 133559 but has the following unwanted behavior now that our bindings are behaving in a more standard way: navigator.geolocation = 1 console.log(navigator.geolocation) -> prints 1 instead of the Geolocation object. We need to test if this workaround is still needed by the Amazon app and find a better workaround if it is.
Moving the Navigator properties to the prototype and dropping the [Replaceable] for Navigator.geolocation, I have verified that rdar://problem/16332749 no longer reproduces in the latest Amazon iOS app.
<rdar://problem/24685092>
Firefox and Chrome both don't allow replacing Navigator.geolocation. Both throw an exception when trying to set Navigator.geolocation in strict mode.
Created attachment 271495 [details] Patch
Comment on attachment 271495 [details] Patch Attachment 271495 [details] did not pass mac-ews (mac): Output: http://webkit-queues.webkit.org/results/842221 New failing tests: fast/dom/Geolocation/enabled.html js/dom/delete-syntax.html
Created attachment 271503 [details] Archive of layout-test-results from ews101 for mac-yosemite The attached test failures were seen while running run-webkit-tests on the mac-ews. Bot: ews101 Port: mac-yosemite Platform: Mac OS X 10.10.5
Created attachment 271504 [details] Patch
Comment on attachment 271504 [details] Patch Clearing flags on attachment: 271504 Committed r196673: <http://trac.webkit.org/changeset/196673>
All reviewed patches have been landed. Closing bug.