diff options
author | Usman Yahaya Baba <91813795+uthmaniv@users.noreply.github.com> | 2025-04-06 07:29:16 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-04-06 06:29:16 +0000 |
commit | 9d074161638829deb0f0b1adacb8ff270abd1978 (patch) | |
tree | 3c2add3e19057908ad724e4806ecf42fc34e58d5 /components | |
parent | 6898eae61ee8070bbc19815bc35428200e7074bf (diff) | |
download | servo-9d074161638829deb0f0b1adacb8ff270abd1978.tar.gz servo-9d074161638829deb0f0b1adacb8ff270abd1978.zip |
Remove unsafe from maybe_cross_origin_get_prototype (#36366)
Remove unsafe from maybe_cross_origin_get_prototype
-Refactors `maybe_cross_origin_get_prototype` to remove the `unsafe`
annotation from the function signature and `get_proto_object` argument
-Adds `unsafe` blocks around calls `D::GlobalScope::from_context` and
`MutableHandleObject::from_raw`
Testing: Changes does not require test
Fixes: https://github.com/servo/servo/issues/36357
Signed-off-by: Uthman Yahaya Baba <uthmanyahayababa@gmail.com>
Diffstat (limited to 'components')
-rw-r--r-- | components/script_bindings/proxyhandler.rs | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/components/script_bindings/proxyhandler.rs b/components/script_bindings/proxyhandler.rs index d1546722e66..c7d3860b3b9 100644 --- a/components/script_bindings/proxyhandler.rs +++ b/components/script_bindings/proxyhandler.rs @@ -579,21 +579,19 @@ pub(crate) unsafe extern "C" fn maybe_cross_origin_set_rawcx<D: DomTypes>( /// Implementation of `[[GetPrototypeOf]]` for [`Location`]. /// /// [`Location`]: https://html.spec.whatwg.org/multipage/#location-getprototypeof -pub(crate) unsafe fn maybe_cross_origin_get_prototype<D: DomTypes>( +pub(crate) fn maybe_cross_origin_get_prototype<D: DomTypes>( cx: SafeJSContext, proxy: RawHandleObject, - get_proto_object: unsafe fn(cx: SafeJSContext, global: HandleObject, rval: MutableHandleObject), + get_proto_object: fn(cx: SafeJSContext, global: HandleObject, rval: MutableHandleObject), proto: RawMutableHandleObject, ) -> bool { // > 1. If ! IsPlatformObjectSameOrigin(this) is true, then return ! OrdinaryGetPrototypeOf(this). if <D as DomHelpers<D>>::is_platform_object_same_origin(cx, proxy) { let ac = JSAutoRealm::new(*cx, proxy.get()); - let global = D::GlobalScope::from_context(*cx, InRealm::Entered(&ac)); - get_proto_object( - cx, - global.reflector().get_jsobject(), - MutableHandleObject::from_raw(proto), - ); + let global = unsafe { D::GlobalScope::from_context(*cx, InRealm::Entered(&ac)) }; + get_proto_object(cx, global.reflector().get_jsobject(), unsafe { + MutableHandleObject::from_raw(proto) + }); return !proto.is_null(); } |