| Index: core/frame/Location.idl
 | 
| diff --git a/core/frame/Location.idl b/core/frame/Location.idl
 | 
| index 1d1c89389ebe7e181ee8649fc3b52e6f1ab65b66..5ce29901ece1c12697f524c54e386b17d61a3071 100644
 | 
| --- a/core/frame/Location.idl
 | 
| +++ b/core/frame/Location.idl
 | 
| @@ -27,16 +27,21 @@
 | 
|   */
 | 
|  
 | 
|  [
 | 
| -    CheckSecurity
 | 
| +    CheckSecurity=Frame,
 | 
|  ] interface Location {
 | 
| -    [SetterCallWith=ActiveWindow&FirstWindow, DoNotCheckSecurityOnSetter, Unforgeable] attribute DOMString href;
 | 
| +    // |assign|, |replace|, and *writing* |href| do not require a security
 | 
| +    // check, as they *change* the page, and thus these do not change any
 | 
| +    // property of an *existing* document at a different origin.
 | 
| +    // However, *reading* |href|, or accessing any component, is a security
 | 
| +    // problem, since that allows tracking navigation.
 | 
| +    [SetterCallWith=ActiveWindow&FirstWindow, DoNotCheckSecurity=Setter, Unforgeable] attribute DOMString href;
 | 
|  
 | 
| -    [CallWith=ActiveWindow&FirstWindow, DoNotCheckSecurity, Unforgeable, ReadOnly, PerWorldBindings, ActivityLogging=AccessForIsolatedWorlds] void assign([Default=Undefined] optional DOMString url);
 | 
| -    [CallWith=ActiveWindow&FirstWindow, DoNotCheckSecurity, Unforgeable, ReadOnly, PerWorldBindings, ActivityLogging=AccessForIsolatedWorlds] void replace([Default=Undefined] optional DOMString url);
 | 
| +    [CallWith=ActiveWindow&FirstWindow, DoNotCheckSecurity, Unforgeable, ReadOnly, PerWorldBindings, ActivityLogging=ForIsolatedWorlds] void assign(DOMString url);
 | 
| +    [CallWith=ActiveWindow&FirstWindow, DoNotCheckSecurity, Unforgeable, ReadOnly, PerWorldBindings, ActivityLogging=ForIsolatedWorlds] void replace(DOMString url);
 | 
|      [CallWith=ActiveWindow, Unforgeable, ReadOnly] void reload();
 | 
|  
 | 
|      // URI decomposition attributes
 | 
| -    [SetterCallWith=ActiveWindow&FirstWindow, SetterRaisesException] attribute DOMString protocol;
 | 
| +    [SetterCallWith=ActiveWindow&FirstWindow, RaisesException=Setter] attribute DOMString protocol;
 | 
|      [SetterCallWith=ActiveWindow&FirstWindow] attribute DOMString host;
 | 
|      [SetterCallWith=ActiveWindow&FirstWindow] attribute DOMString hostname;
 | 
|      [SetterCallWith=ActiveWindow&FirstWindow] attribute DOMString port;
 | 
| 
 |