I was wondering if it would be a reasonable change to make accessing location.href (and other location properties) throw SECURITY_ERR when accessed across origins (<a href="https://webkit.org/b/43504">https://webkit.org/b/43504</a>). This initially was reported on the Chrome side (<a href="http://crbug.com/17325">http://crbug.com/17325</a>), but it looks like neither the JSC nor V8 bindings do this, so fixing it across the board seemed reasonable.<div>
<br></div><div>From my investigations, it looks like IE and Gecko both throw an exception in this case, and the HTML5 spec mentions it too (<a href="http://www.whatwg.org/specs/web-apps/current-work/multipage/history.html#security-location">http://www.whatwg.org/specs/web-apps/current-work/multipage/history.html#security-location</a>).</div>
<div><br></div><div>I realize that we&#39;re cautious around the access checks for security reasons (based on changes like <a href="https://trac.webkit.org/changeset/48619">https://trac.webkit.org/changeset/48619</a>), but this seems safe since 1) we were returning control to the script at that point anyway 2) we already throw exceptions in some cases in that code: <a href="https://trac.webkit.org/browser/trunk/WebCore/bindings/js/JSLocationCustom.cpp#L219">https://trac.webkit.org/browser/trunk/WebCore/bindings/js/JSLocationCustom.cpp#L219</a></div>
<div><br></div><div>Thanks,</div><div>Mihai</div>