summaryrefslogtreecommitdiff
path: root/js/src/vm/NativeObject-inl.h
diff options
context:
space:
mode:
authorMartok <martok@martoks-place.de>2023-06-17 16:05:46 +0200
committerMartok <martok@martoks-place.de>2023-06-29 22:27:28 +0200
commitbed754c21c712013b425417a9be3b18125695252 (patch)
treebd71d33ac3448298b5f7ec7c840c7981292cfe02 /js/src/vm/NativeObject-inl.h
parent85efbc0c1e4d62098b385ffa141add07b811429d (diff)
downloaduxp-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.h11
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();