mirror of
https://github.com/servo/servo.git
synced 2025-07-23 23:33:43 +01:00
Make Promise::resolve_native actually sound
We shouldn't have to pass a raw JSContext pointer, and to enter the promise's context's compartment by hand.
This commit is contained in:
parent
658dc8a501
commit
5addc2dfa3
17 changed files with 42 additions and 53 deletions
|
@ -514,7 +514,7 @@ impl AsyncBluetoothListener for Bluetooth {
|
|||
BluetoothResponse::RequestDevice(device) => {
|
||||
let mut device_instance_map = self.device_instance_map.borrow_mut();
|
||||
if let Some(existing_device) = device_instance_map.get(&device.id.clone()) {
|
||||
return promise.resolve_native(promise_cx, &**existing_device);
|
||||
return promise.resolve_native(&**existing_device);
|
||||
}
|
||||
let bt_device = BluetoothDevice::new(&self.global(),
|
||||
DOMString::from(device.id.clone()),
|
||||
|
@ -530,12 +530,12 @@ impl AsyncBluetoothListener for Bluetooth {
|
|||
);
|
||||
// https://webbluetoothcg.github.io/web-bluetooth/#dom-bluetooth-requestdevice
|
||||
// Step 5.
|
||||
promise.resolve_native(promise_cx, &bt_device);
|
||||
promise.resolve_native(&bt_device);
|
||||
},
|
||||
// https://webbluetoothcg.github.io/web-bluetooth/#dom-bluetooth-getavailability
|
||||
// Step 2 - 3.
|
||||
BluetoothResponse::GetAvailability(is_available) => {
|
||||
promise.resolve_native(promise_cx, &is_available);
|
||||
promise.resolve_native(&is_available);
|
||||
}
|
||||
_ => promise.reject_error(promise_cx, Error::Type("Something went wrong...".to_owned())),
|
||||
}
|
||||
|
@ -573,7 +573,7 @@ impl PermissionAlgorithm for Bluetooth {
|
|||
// Step 3.
|
||||
if let PermissionState::Denied = status.get_state() {
|
||||
status.set_devices(Vec::new());
|
||||
return promise.resolve_native(cx, status);
|
||||
return promise.resolve_native(status);
|
||||
}
|
||||
|
||||
// Step 4.
|
||||
|
@ -637,7 +637,7 @@ impl PermissionAlgorithm for Bluetooth {
|
|||
|
||||
// https://w3c.github.io/permissions/#dom-permissions-query
|
||||
// Step 7.
|
||||
promise.resolve_native(cx, status);
|
||||
promise.resolve_native(status);
|
||||
}
|
||||
|
||||
// https://webbluetoothcg.github.io/web-bluetooth/#request-the-bluetooth-permission
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue