bool JSLocation::deleteProperty(JSCell* cell, ExecState* exec, PropertyName propertyName) { JSLocation* thisObject = jsCast<JSLocation*>(cell); // Only allow deleting by frames in the same origin. if (!BindingSecurity::shouldAllowAccessToFrame(exec, thisObject->wrapped().frame(), ThrowSecurityError)) return false; return Base::deleteProperty(thisObject, exec, propertyName); }
void JSLocation::getOwnPropertyNames(JSObject* object, ExecState* exec, PropertyNameArray& propertyNames, EnumerationMode mode) { JSLocation* thisObject = jsCast<JSLocation*>(object); // Only allow the location object to enumerated by frames in the same origin. if (!shouldAllowAccessToFrame(exec, thisObject->wrapped().frame())) return; Base::getOwnPropertyNames(thisObject, exec, propertyNames, mode); }