diff options
author | Simon Sapin <simon.sapin@exyr.org> | 2018-01-22 13:26:04 +0100 |
---|---|---|
committer | Simon Sapin <simon.sapin@exyr.org> | 2018-01-22 17:41:26 +0100 |
commit | b78ac6ba6a40929dad3ec00bf8c0e99fdb0f3437 (patch) | |
tree | e8e8dfca60fda0179c5b33b77585430a2f30ea11 | |
parent | 10ec5a2bb0e08940a5d14500d59f2aadd913bc19 (diff) | |
download | servo-b78ac6ba6a40929dad3ec00bf8c0e99fdb0f3437.tar.gz servo-b78ac6ba6a40929dad3ec00bf8c0e99fdb0f3437.zip |
Use safe NonZero constructor instead of an explicit null check
-rw-r--r-- | components/script/dom/bindings/iterable.rs | 3 | ||||
-rw-r--r-- | components/script/dom/imagedata.rs | 3 | ||||
-rw-r--r-- | components/script/dom/testbinding.rs | 6 | ||||
-rw-r--r-- | components/script/dom/xmlhttprequest.rs | 4 |
4 files changed, 6 insertions, 10 deletions
diff --git a/components/script/dom/bindings/iterable.rs b/components/script/dom/bindings/iterable.rs index 0228e31caae..15fbe7175cb 100644 --- a/components/script/dom/bindings/iterable.rs +++ b/components/script/dom/bindings/iterable.rs @@ -105,8 +105,7 @@ impl<T: DomObject + JSTraceable + Iterable> IterableIterator<T> { }; self.index.set(index + 1); result.map(|_| { - assert!(!rval.is_null()); - unsafe { NonNull::new_unchecked(rval.get()) } + NonNull::new(rval.get()).expect("got a null pointer") }) } } diff --git a/components/script/dom/imagedata.rs b/components/script/dom/imagedata.rs index 9a51c0088d1..9e80d86d089 100644 --- a/components/script/dom/imagedata.rs +++ b/components/script/dom/imagedata.rs @@ -160,7 +160,6 @@ impl ImageDataMethods for ImageData { #[allow(unsafe_code)] // https://html.spec.whatwg.org/multipage/#dom-imagedata-data unsafe fn Data(&self, _: *mut JSContext) -> NonNull<JSObject> { - assert!(!self.data.get().is_null()); - NonNull::new_unchecked(self.data.get()) + NonNull::new(self.data.get()).expect("got a null pointer") } } diff --git a/components/script/dom/testbinding.rs b/components/script/dom/testbinding.rs index aeaad77eb11..2dd77427590 100644 --- a/components/script/dom/testbinding.rs +++ b/components/script/dom/testbinding.rs @@ -154,8 +154,7 @@ impl TestBindingMethods for TestBinding { #[allow(unsafe_code)] unsafe fn ArrayAttribute(&self, cx: *mut JSContext) -> NonNull<JSObject> { rooted!(in(cx) let array = JS_NewUint8ClampedArray(cx, 16)); - assert!(!array.is_null()); - NonNull::new_unchecked(array.get()) + NonNull::new(array.get()).expect("got a null pointer") } #[allow(unsafe_code)] unsafe fn AnyAttribute(&self, _: *mut JSContext) -> JSVal { NullValue() } @@ -164,8 +163,7 @@ impl TestBindingMethods for TestBinding { #[allow(unsafe_code)] unsafe fn ObjectAttribute(&self, cx: *mut JSContext) -> NonNull<JSObject> { rooted!(in(cx) let obj = JS_NewPlainObject(cx)); - assert!(!obj.is_null()); - NonNull::new_unchecked(obj.get()) + NonNull::new(obj.get()).expect("got a null pointer") } #[allow(unsafe_code)] unsafe fn SetObjectAttribute(&self, _: *mut JSContext, _: *mut JSObject) {} diff --git a/components/script/dom/xmlhttprequest.rs b/components/script/dom/xmlhttprequest.rs index eb4804b2053..cb42db58ad4 100644 --- a/components/script/dom/xmlhttprequest.rs +++ b/components/script/dom/xmlhttprequest.rs @@ -1123,8 +1123,8 @@ impl XMLHttpRequest { unsafe fn arraybuffer_response(&self, cx: *mut JSContext) -> Option<NonNull<JSObject>> { // Step 1 let created = self.response_arraybuffer.get(); - if !created.is_null() { - return Some(NonNull::new_unchecked(created)); + if let Some(nonnull) = NonNull::new(created) { + return Some(nonnull) } // Step 2 |