浏览代码

LibJS: Convert Map::create() to NonnullGCPtr

Linus Groh 2 年之前
父节点
当前提交
d48cdc7fa6

+ 1 - 1
Userland/Libraries/LibJS/Runtime/ArrayPrototype.cpp

@@ -863,7 +863,7 @@ JS_DEFINE_NATIVE_FUNCTION(ArrayPrototype::group_to_map)
     }
 
     // 7. Let map be ! Construct(%Map%).
-    auto* map = Map::create(realm);
+    auto map = Map::create(realm);
 
     // 8. For each Record { [[Key]], [[Elements]] } g of groups, do
     for (auto& group : groups) {

+ 2 - 2
Userland/Libraries/LibJS/Runtime/Map.cpp

@@ -8,9 +8,9 @@
 
 namespace JS {
 
-Map* Map::create(Realm& realm)
+NonnullGCPtr<Map> Map::create(Realm& realm)
 {
-    return realm.heap().allocate<Map>(realm, *realm.intrinsics().map_prototype());
+    return *realm.heap().allocate<Map>(realm, *realm.intrinsics().map_prototype());
 }
 
 Map::Map(Object& prototype)

+ 1 - 1
Userland/Libraries/LibJS/Runtime/Map.h

@@ -20,7 +20,7 @@ class Map : public Object {
     JS_OBJECT(Map, Object);
 
 public:
-    static Map* create(Realm&);
+    static NonnullGCPtr<Map> create(Realm&);
 
     virtual ~Map() override = default;