From f9900957284231bf4568bdf56948beacd474943f Mon Sep 17 00:00:00 2001 From: Linus Groh Date: Tue, 13 Dec 2022 20:49:50 +0000 Subject: [PATCH] LibJS: Convert NumberObject::create() to NonnullGCPtr --- Userland/Libraries/LibJS/Runtime/NumberObject.cpp | 4 ++-- Userland/Libraries/LibJS/Runtime/NumberObject.h | 2 +- Userland/Libraries/LibJS/Runtime/Value.cpp | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Userland/Libraries/LibJS/Runtime/NumberObject.cpp b/Userland/Libraries/LibJS/Runtime/NumberObject.cpp index 8284f91cad..200e1d4265 100644 --- a/Userland/Libraries/LibJS/Runtime/NumberObject.cpp +++ b/Userland/Libraries/LibJS/Runtime/NumberObject.cpp @@ -9,9 +9,9 @@ namespace JS { -NumberObject* NumberObject::create(Realm& realm, double value) +NonnullGCPtr NumberObject::create(Realm& realm, double value) { - return realm.heap().allocate(realm, value, *realm.intrinsics().number_prototype()); + return *realm.heap().allocate(realm, value, *realm.intrinsics().number_prototype()); } NumberObject::NumberObject(double value, Object& prototype) diff --git a/Userland/Libraries/LibJS/Runtime/NumberObject.h b/Userland/Libraries/LibJS/Runtime/NumberObject.h index ceaeb29e62..f6bc0df4d1 100644 --- a/Userland/Libraries/LibJS/Runtime/NumberObject.h +++ b/Userland/Libraries/LibJS/Runtime/NumberObject.h @@ -14,7 +14,7 @@ class NumberObject : public Object { JS_OBJECT(NumberObject, Object); public: - static NumberObject* create(Realm&, double); + static NonnullGCPtr create(Realm&, double); virtual ~NumberObject() override = default; diff --git a/Userland/Libraries/LibJS/Runtime/Value.cpp b/Userland/Libraries/LibJS/Runtime/Value.cpp index d891aa301e..e269df0b15 100644 --- a/Userland/Libraries/LibJS/Runtime/Value.cpp +++ b/Userland/Libraries/LibJS/Runtime/Value.cpp @@ -523,7 +523,7 @@ ThrowCompletionOr Value::to_object(VM& vm) const // Number if (is_number()) { // Return a new Number object whose [[NumberData]] internal slot is set to argument. See 21.1 for a description of Number objects. - return NumberObject::create(realm, as_double()); + return NumberObject::create(realm, as_double()).ptr(); } switch (m_value.tag) {