mirror of
https://github.com/servo/servo.git
synced 2025-08-03 04:30:10 +01:00
Remove unsafe annotation add to unsafe blocks (#36399)
Remove the `unsafe` annotation from the `cross_origin_get` function and add `unsafe` blocks around unsafe code within the function Testing: Testing is not required as this change does not alter behaviour. Fixes: #36358 --------- Signed-off-by: Barigbue <barigbuenbira@gmail.com>
This commit is contained in:
parent
867711c6b9
commit
7fd004adce
1 changed files with 23 additions and 17 deletions
|
@ -606,7 +606,7 @@ pub(crate) fn maybe_cross_origin_get_prototype<D: DomTypes>(
|
|||
/// for a maybe-cross-origin object.
|
||||
///
|
||||
/// [`CrossOriginGet`]: https://html.spec.whatwg.org/multipage/#crossoriginget-(-o,-p,-receiver-)
|
||||
pub(crate) unsafe fn cross_origin_get<D: DomTypes>(
|
||||
pub(crate) fn cross_origin_get<D: DomTypes>(
|
||||
cx: SafeJSContext,
|
||||
proxy: RawHandleObject,
|
||||
receiver: RawHandleValue,
|
||||
|
@ -616,14 +616,16 @@ pub(crate) unsafe fn cross_origin_get<D: DomTypes>(
|
|||
// > 1. Let `desc` be `? O.[[GetOwnProperty]](P)`.
|
||||
rooted!(in(*cx) let mut descriptor = PropertyDescriptor::default());
|
||||
let mut is_none = false;
|
||||
if !InvokeGetOwnPropertyDescriptor(
|
||||
GetProxyHandler(*proxy),
|
||||
*cx,
|
||||
proxy,
|
||||
id,
|
||||
descriptor.handle_mut().into(),
|
||||
&mut is_none,
|
||||
) {
|
||||
if !unsafe {
|
||||
InvokeGetOwnPropertyDescriptor(
|
||||
GetProxyHandler(*proxy),
|
||||
*cx,
|
||||
proxy,
|
||||
id,
|
||||
descriptor.handle_mut().into(),
|
||||
&mut is_none,
|
||||
)
|
||||
} {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@ -654,16 +656,20 @@ pub(crate) unsafe fn cross_origin_get<D: DomTypes>(
|
|||
}
|
||||
|
||||
rooted!(in(*cx) let mut getter_jsval = UndefinedValue());
|
||||
getter.get().to_jsval(*cx, getter_jsval.handle_mut());
|
||||
unsafe {
|
||||
getter.get().to_jsval(*cx, getter_jsval.handle_mut());
|
||||
}
|
||||
|
||||
// > 7. Return `? Call(getter, Receiver)`.
|
||||
jsapi::Call(
|
||||
*cx,
|
||||
receiver,
|
||||
getter_jsval.handle().into(),
|
||||
&jsapi::HandleValueArray::empty(),
|
||||
vp,
|
||||
)
|
||||
unsafe {
|
||||
jsapi::Call(
|
||||
*cx,
|
||||
receiver,
|
||||
getter_jsval.handle().into(),
|
||||
&jsapi::HandleValueArray::empty(),
|
||||
vp,
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
/// Implementation of [`CrossOriginSet`].
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue