diff options
author | Martok <martok@martoks-place.de> | 2023-06-17 16:05:46 +0200 |
---|---|---|
committer | Martok <martok@martoks-place.de> | 2023-06-29 22:27:28 +0200 |
commit | bed754c21c712013b425417a9be3b18125695252 (patch) | |
tree | bd71d33ac3448298b5f7ec7c840c7981292cfe02 /js/src/vm/NativeObject-inl.h | |
parent | 85efbc0c1e4d62098b385ffa141add07b811429d (diff) | |
download | uxp-bed754c21c712013b425417a9be3b18125695252.tar.gz |
Issue #2259 - Add mozilla::Result<V, E> and JS::Result<> for fallible return values
Based-on: m-c 1283562, 1277368/1, 1324828
Diffstat (limited to 'js/src/vm/NativeObject-inl.h')
-rw-r--r-- | js/src/vm/NativeObject-inl.h | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/js/src/vm/NativeObject-inl.h b/js/src/vm/NativeObject-inl.h index e2fccbdd44..69976bc462 100644 --- a/js/src/vm/NativeObject-inl.h +++ b/js/src/vm/NativeObject-inl.h @@ -258,9 +258,8 @@ NativeObject::createWithTemplate(JSContext* cx, gc::InitialHeap heap, MOZ_ASSERT(CanBeFinalizedInBackground(kind, shape->getObjectClass())); kind = gc::GetBackgroundAllocKind(kind); - JSObject* baseObj = create(cx, kind, heap, shape, group); - if (!baseObj) - return nullptr; + JSObject* baseObj; + JS_TRY_VAR_OR_RETURN_NULL(cx, baseObj, create(cx, kind, heap, shape, group)); return &baseObj->as<NativeObject>(); } @@ -272,9 +271,9 @@ NativeObject::copy(ExclusiveContext* cx, gc::AllocKind kind, gc::InitialHeap hea RootedObjectGroup group(cx, templateObject->group()); MOZ_ASSERT(!templateObject->denseElementsAreCopyOnWrite()); - JSObject* baseObj = create(cx, kind, heap, shape, group); - if (!baseObj) - return nullptr; + JSObject* baseObj; + JS_TRY_VAR_OR_RETURN_NULL(cx, baseObj, create(cx, kind, heap, shape, group)); + NativeObject* obj = &baseObj->as<NativeObject>(); size_t span = shape->slotSpan(); |