mirror of
https://github.com/servo/servo.git
synced 2025-06-06 16:45:39 +00:00
Create a helper API for entering a DOM object's compartment
Revert some unnecessary changes Fix fmt errors
This commit is contained in:
parent
84786add22
commit
adb402487e
14 changed files with 45 additions and 50 deletions
|
@ -5,6 +5,7 @@
|
|||
//! This module implements structured cloning, as defined by [HTML]
|
||||
//! (https://html.spec.whatwg.org/multipage/#safe-passing-of-structured-data).
|
||||
|
||||
use crate::compartments::enter_realm;
|
||||
use crate::dom::bindings::conversions::root_from_handleobject;
|
||||
use crate::dom::bindings::error::{Error, Fallible};
|
||||
use crate::dom::bindings::reflector::DomObject;
|
||||
|
@ -18,11 +19,11 @@ use js::glue::NewJSAutoStructuredCloneBuffer;
|
|||
use js::glue::WriteBytesToJSStructuredCloneData;
|
||||
use js::jsapi::CloneDataPolicy;
|
||||
use js::jsapi::HandleObject as RawHandleObject;
|
||||
use js::jsapi::JSContext;
|
||||
use js::jsapi::MutableHandleObject as RawMutableHandleObject;
|
||||
use js::jsapi::StructuredCloneScope;
|
||||
use js::jsapi::TransferableOwnership;
|
||||
use js::jsapi::JS_STRUCTURED_CLONE_VERSION;
|
||||
use js::jsapi::{JSAutoRealm, JSContext};
|
||||
use js::jsapi::{JSObject, JS_ClearPendingException};
|
||||
use js::jsapi::{JSStructuredCloneCallbacks, JSStructuredCloneReader, JSStructuredCloneWriter};
|
||||
use js::jsapi::{JS_ReadBytes, JS_WriteBytes};
|
||||
|
@ -307,8 +308,7 @@ impl StructuredCloneData {
|
|||
/// Panics if `JS_ReadStructuredClone` fails.
|
||||
fn read_clone(global: &GlobalScope, data: *mut u64, nbytes: size_t, rval: MutableHandleValue) {
|
||||
let cx = global.get_cx();
|
||||
let globalhandle = global.reflector().get_jsobject();
|
||||
let _ac = JSAutoRealm::new(cx, globalhandle.get());
|
||||
let _ac = enter_realm(&*global);
|
||||
let mut sc_holder = StructuredCloneHolder { blob: None };
|
||||
let sc_holder_ptr = &mut sc_holder as *mut _;
|
||||
unsafe {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue