diff options
author | bors-servo <lbergstrom+bors@mozilla.com> | 2017-02-16 02:03:54 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-02-16 02:03:54 -0800 |
commit | 0cc6d3e99781394b76ad2725661ae8f6bb895f7b (patch) | |
tree | bcc391aba306ce52e66ad1227238c866ad33dba3 /components/script/dom/testbinding.rs | |
parent | 84a44a401424852bc44ef5e751e84544ed892e70 (diff) | |
parent | f7e2f0e641967ba78a0b6b057aec760f9a9ca519 (diff) | |
download | servo-0cc6d3e99781394b76ad2725661ae8f6bb895f7b.tar.gz servo-0cc6d3e99781394b76ad2725661ae8f6bb895f7b.zip |
Auto merge of #15544 - servo:RootedTraceable-dict, r=nox
Root dictionaries that contain any or object.
<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/15544)
<!-- Reviewable:end -->
Diffstat (limited to 'components/script/dom/testbinding.rs')
-rw-r--r-- | components/script/dom/testbinding.rs | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/components/script/dom/testbinding.rs b/components/script/dom/testbinding.rs index 4726b82d900..1582647ca33 100644 --- a/components/script/dom/testbinding.rs +++ b/components/script/dom/testbinding.rs @@ -27,13 +27,14 @@ use dom::bindings::num::Finite; use dom::bindings::refcounted::TrustedPromise; use dom::bindings::reflector::{DomObject, Reflector, reflect_dom_object}; use dom::bindings::str::{ByteString, DOMString, USVString}; +use dom::bindings::trace::RootedTraceableBox; use dom::bindings::weakref::MutableWeakRef; use dom::blob::{Blob, BlobImpl}; use dom::globalscope::GlobalScope; use dom::promise::Promise; use dom::promisenativehandler::{PromiseNativeHandler, Callback}; use dom::url::URL; -use js::jsapi::{HandleObject, HandleValue, JSContext, JSObject, JSAutoCompartment}; +use js::jsapi::{HandleObject, HandleValue, Heap, JSContext, JSObject, JSAutoCompartment}; use js::jsapi::{JS_NewPlainObject, JS_NewUint8ClampedArray}; use js::jsval::{JSVal, NullValue}; use script_traits::MsDuration; @@ -338,12 +339,12 @@ impl TestBindingMethods for TestBinding { fn ReceiveNullableSequence(&self) -> Option<Vec<i32>> { Some(vec![1]) } fn ReceiveTestDictionaryWithSuccessOnKeyword(&self) -> TestDictionary { TestDictionary { - anyValue: NullValue(), + anyValue: Heap::new(NullValue()), booleanValue: None, byteValue: None, dict: TestDictionaryDefaults { UnrestrictedDoubleValue: 0.0, - anyValue: NullValue(), + anyValue: Heap::new(NullValue()), booleanValue: false, bytestringValue: ByteString::new(vec![]), byteValue: 0, @@ -359,7 +360,7 @@ impl TestBindingMethods for TestBinding { nullableFloatValue: None, nullableLongLongValue: None, nullableLongValue: None, - nullableObjectValue: ptr::null_mut(), + nullableObjectValue: Heap::new(ptr::null_mut()), nullableOctetValue: None, nullableShortValue: None, nullableStringValue: None, @@ -402,7 +403,7 @@ impl TestBindingMethods for TestBinding { } } - fn DictMatchesPassedValues(&self, arg: &TestDictionary) -> bool { + fn DictMatchesPassedValues(&self, arg: RootedTraceableBox<TestDictionary>) -> bool { arg.type_.as_ref().map(|s| s == "success").unwrap_or(false) && arg.nonRequiredNullable.is_none() && arg.nonRequiredNullable2 == Some(None) |