aboutsummaryrefslogtreecommitdiffstats
path: root/components
diff options
context:
space:
mode:
authorSudarsan <sudar.theone@gmail.com>2020-08-28 20:54:18 +0800
committerSudarsan <sudar.theone@gmail.com>2020-08-28 20:54:18 +0800
commitf8c9ee4eff1ae7a72037e16f2aa97ad6bb69da4e (patch)
treee6c9d62ef7eab4920efe4c9e7bd5d3e603ef90e1 /components
parent9e6da58d7793a4576fef38446457e1073a19cd5e (diff)
downloadservo-f8c9ee4eff1ae7a72037e16f2aa97ad6bb69da4e.tar.gz
servo-f8c9ee4eff1ae7a72037e16f2aa97ad6bb69da4e.zip
Update mozjs to 0.14.1
This update pulls in improvements on mozjs that now removes the need to pass pointers to CompileOptionsWraper::new(), allows NewProxyObject to now accept a Singleton bool and JSClass and removes an unsafe Handle::new usage.
Diffstat (limited to 'components')
-rw-r--r--components/script/dom/bindings/codegen/CodegenRust.py2
-rw-r--r--components/script/dom/eventtarget.rs3
-rw-r--r--components/script/dom/globalscope.rs4
-rw-r--r--components/script/dom/htmlscriptelement.rs4
-rw-r--r--components/script/script_module.rs4
-rw-r--r--components/script/webdriver_handlers.rs4
6 files changed, 8 insertions, 13 deletions
diff --git a/components/script/dom/bindings/codegen/CodegenRust.py b/components/script/dom/bindings/codegen/CodegenRust.py
index 4d1a3972d7b..83e68cdce76 100644
--- a/components/script/dom/bindings/codegen/CodegenRust.py
+++ b/components/script/dom/bindings/codegen/CodegenRust.py
@@ -2778,6 +2778,8 @@ rooted!(in(*cx) let obj = NewProxyObject(
handler,
Handle::from_raw(UndefinedHandleValue),
proto.get(),
+ ptr::null(),
+ false,
));
assert!(!obj.is_null());
SetProxyReservedSlot(
diff --git a/components/script/dom/eventtarget.rs b/components/script/dom/eventtarget.rs
index 7018300b107..eb27f63069f 100644
--- a/components/script/dom/eventtarget.rs
+++ b/components/script/dom/eventtarget.rs
@@ -511,7 +511,6 @@ impl EventTarget {
// Step 3.9
- let url_serialized = CString::new(handler.url.to_string()).unwrap();
let name = CString::new(format!("on{}", &**ty)).unwrap();
// Step 3.9, subsection ParameterList
@@ -528,7 +527,7 @@ impl EventTarget {
let cx = window.get_cx();
let options = unsafe {
- CompileOptionsWrapper::new(*cx, url_serialized.as_ptr(), handler.line as u32)
+ CompileOptionsWrapper::new(*cx, &handler.url.to_string(), handler.line as u32)
};
// Step 3.9, subsection Scope steps 1-6
diff --git a/components/script/dom/globalscope.rs b/components/script/dom/globalscope.rs
index ee1b5553bc7..07fea65a79a 100644
--- a/components/script/dom/globalscope.rs
+++ b/components/script/dom/globalscope.rs
@@ -118,7 +118,6 @@ use std::borrow::Cow;
use std::cell::Cell;
use std::collections::hash_map::Entry;
use std::collections::{HashMap, VecDeque};
-use std::ffi::CString;
use std::mem;
use std::ops::Index;
use std::rc::Rc;
@@ -2586,7 +2585,6 @@ impl GlobalScope {
self.time_profiler_chan().clone(),
|| {
let cx = self.get_cx();
- let filename = CString::new(filename).unwrap();
let ar = enter_realm(&*self);
@@ -2597,7 +2595,7 @@ impl GlobalScope {
match code {
SourceCode::Text(text_code) => {
let options =
- CompileOptionsWrapper::new(*cx, filename.as_ptr(), line_number);
+ CompileOptionsWrapper::new(*cx, filename, line_number);
debug!("compiling dom string");
compiled_script.set(Compile1(
diff --git a/components/script/dom/htmlscriptelement.rs b/components/script/dom/htmlscriptelement.rs
index b6e89d4027e..de22b9787c4 100644
--- a/components/script/dom/htmlscriptelement.rs
+++ b/components/script/dom/htmlscriptelement.rs
@@ -58,7 +58,6 @@ use servo_config::pref;
use servo_url::ImmutableOrigin;
use servo_url::ServoUrl;
use std::cell::Cell;
-use std::ffi::CString;
use std::fs::{create_dir_all, read_to_string, File};
use std::io::{Read, Seek, Write};
use std::mem::replace;
@@ -424,8 +423,7 @@ impl FetchResponseListener for ClassicContext {
let cx = global.get_cx();
let _ar = enter_realm(&*global);
- let final_url_c_str = CString::new(final_url.as_str()).unwrap();
- let options = unsafe { CompileOptionsWrapper::new(*cx, final_url_c_str.as_ptr(), 1) };
+ let options = unsafe { CompileOptionsWrapper::new(*cx, final_url.as_str(), 1) };
let can_compile_off_thread = pref!(dom.script.asynch) &&
unsafe { CanCompileOffThread(*cx, options.ptr as *const _, source_text.len()) };
diff --git a/components/script/script_module.rs b/components/script/script_module.rs
index 9d8e14f8309..7a14410ab66 100644
--- a/components/script/script_module.rs
+++ b/components/script/script_module.rs
@@ -70,7 +70,6 @@ use net_traits::{FetchResponseListener, NetworkError};
use net_traits::{ResourceFetchTiming, ResourceTimingType};
use servo_url::ServoUrl;
use std::collections::{HashMap, HashSet};
-use std::ffi;
use std::mem;
use std::rc::Rc;
use std::str::FromStr;
@@ -420,12 +419,11 @@ impl ModuleTree {
url: ServoUrl,
options: ScriptFetchOptions,
) -> Result<ModuleObject, RethrowError> {
- let url_cstr = ffi::CString::new(url.as_str().as_bytes()).unwrap();
let _ac = JSAutoRealm::new(*global.get_cx(), *global.reflector().get_jsobject());
let compile_options =
- unsafe { CompileOptionsWrapper::new(*global.get_cx(), url_cstr.as_ptr(), 1) };
+ unsafe { CompileOptionsWrapper::new(*global.get_cx(), url.as_str(), 1) };
unsafe {
rooted!(in(*global.get_cx()) let mut module_script = CompileModuleDontInflate(
diff --git a/components/script/webdriver_handlers.rs b/components/script/webdriver_handlers.rs
index 1d36337f5eb..5129d1c9569 100644
--- a/components/script/webdriver_handlers.rs
+++ b/components/script/webdriver_handlers.rs
@@ -48,7 +48,7 @@ use ipc_channel::ipc::{self, IpcSender};
use js::jsapi::{HandleValueArray, JSAutoRealm, JSContext, JSType, JS_IsExceptionPending};
use js::jsval::UndefinedValue;
use js::rust::wrappers::{JS_CallFunctionName, JS_GetProperty, JS_HasOwnProperty, JS_TypeOfValue};
-use js::rust::{Handle, HandleObject, HandleValue};
+use js::rust::{HandleObject, HandleValue};
use msg::constellation_msg::BrowsingContextId;
use msg::constellation_msg::PipelineId;
use net_traits::CookieSource::{NonHTTP, HTTP};
@@ -256,7 +256,7 @@ pub unsafe fn jsval_to_webdriver(
&mut HandleValueArray::new(),
value.handle_mut(),
) {
- jsval_to_webdriver(cx, global_scope, Handle::new(&value))
+ jsval_to_webdriver(cx, global_scope, value.handle())
} else {
throw_dom_exception(SafeJSContext::from_ptr(cx), global_scope, Error::JSFailed);
Err(WebDriverJSError::JSError)