@@ -933,37 +933,37 @@ void NbtListClassAddHelper(ListTag* tag, Local<Array>& arr) {
933933 > 0 ) { // ListTag::add deletes the Tag which is provided as argument, so make a copy of Tag before using it.
934934 Local<Value> t = arr.get (0 );
935935 if (IsInstanceOf<NbtByteClass>(t))
936- for (size_t i = 0 ; i < arr.size (); ++i) tag->add (* NbtByteClass::extract (arr.get (i))->copy ());
936+ for (size_t i = 0 ; i < arr.size (); ++i) tag->add (NbtByteClass::extract (arr.get (i))->copy ());
937937 else if (IsInstanceOf<NbtShortClass>(t))
938- for (size_t i = 0 ; i < arr.size (); ++i) tag->add (* NbtShortClass::extract (arr.get (i))->copy ());
938+ for (size_t i = 0 ; i < arr.size (); ++i) tag->add (NbtShortClass::extract (arr.get (i))->copy ());
939939 else if (IsInstanceOf<NbtIntClass>(t))
940- for (size_t i = 0 ; i < arr.size (); ++i) tag->add (* NbtIntClass::extract (arr.get (i))->copy ());
940+ for (size_t i = 0 ; i < arr.size (); ++i) tag->add (NbtIntClass::extract (arr.get (i))->copy ());
941941 else if (IsInstanceOf<NbtLongClass>(t))
942- for (size_t i = 0 ; i < arr.size (); ++i) tag->add (* NbtLongClass::extract (arr.get (i))->copy ());
942+ for (size_t i = 0 ; i < arr.size (); ++i) tag->add (NbtLongClass::extract (arr.get (i))->copy ());
943943 else if (IsInstanceOf<NbtFloatClass>(t))
944- for (size_t i = 0 ; i < arr.size (); ++i) tag->add (* NbtFloatClass::extract (arr.get (i))->copy ());
944+ for (size_t i = 0 ; i < arr.size (); ++i) tag->add (NbtFloatClass::extract (arr.get (i))->copy ());
945945 else if (IsInstanceOf<NbtDoubleClass>(t))
946- for (size_t i = 0 ; i < arr.size (); ++i) tag->add (* NbtDoubleClass::extract (arr.get (i))->copy ());
946+ for (size_t i = 0 ; i < arr.size (); ++i) tag->add (NbtDoubleClass::extract (arr.get (i))->copy ());
947947 else if (IsInstanceOf<NbtStringClass>(t))
948- for (size_t i = 0 ; i < arr.size (); ++i) tag->add (* NbtStringClass::extract (arr.get (i))->copy ());
948+ for (size_t i = 0 ; i < arr.size (); ++i) tag->add (NbtStringClass::extract (arr.get (i))->copy ());
949949 else if (IsInstanceOf<NbtByteArrayClass>(t))
950- for (size_t i = 0 ; i < arr.size (); ++i) tag->add (* NbtByteArrayClass::extract (arr.get (i))->copy ());
950+ for (size_t i = 0 ; i < arr.size (); ++i) tag->add (NbtByteArrayClass::extract (arr.get (i))->copy ());
951951 else if (IsInstanceOf<NbtListClass>(t))
952- for (size_t i = 0 ; i < arr.size (); ++i) tag->add (* NbtListClass::extract (arr.get (i))->copyList ());
952+ for (size_t i = 0 ; i < arr.size (); ++i) tag->add (NbtListClass::extract (arr.get (i))->copyList ());
953953 else if (IsInstanceOf<NbtCompoundClass>(t))
954- for (size_t i = 0 ; i < arr.size (); ++i) tag->add (* NbtCompoundClass::extract (arr.get (i))->clone ());
954+ for (size_t i = 0 ; i < arr.size (); ++i) tag->add (NbtCompoundClass::extract (arr.get (i))->clone ());
955955 else if (t.isArray ()) {
956956 for (size_t i = 0 ; i < arr.size (); ++i) {
957- auto arrTag = ListTag ();
957+ auto arrTag = std::make_unique< ListTag> ();
958958 auto data = arr.get (i).asArray ();
959- NbtListClassAddHelper (& arrTag, data);
959+ NbtListClassAddHelper (arrTag. get () , data);
960960 tag->add (std::move (arrTag));
961961 }
962962 } else if (t.isObject ()) {
963963 for (size_t i = 0 ; i < arr.size (); ++i) {
964- auto objTag = CompoundTag ();
964+ auto objTag = std::make_unique< CompoundTag> ();
965965 auto data = arr.get (i).asObject ();
966- NbtCompoundClassAddHelper (& objTag, data);
966+ NbtCompoundClassAddHelper (objTag. get () , data);
967967 tag->add (std::move (objTag));
968968 }
969969 } else {
@@ -1277,25 +1277,25 @@ Local<Value> NbtListClass::addTag(const Arguments& args) {
12771277
12781278 try { // ListTag::add deletes the Tag which is provided as argument, so make a copy of Tag before using it.
12791279 if (IsInstanceOf<NbtByteClass>(args[0 ])) {
1280- nbt->add (* NbtByteClass::extract (args[0 ])->copy ());
1280+ nbt->add (NbtByteClass::extract (args[0 ])->copy ());
12811281 } else if (IsInstanceOf<NbtShortClass>(args[0 ])) {
1282- nbt->add (* NbtShortClass::extract (args[0 ])->copy ());
1282+ nbt->add (NbtShortClass::extract (args[0 ])->copy ());
12831283 } else if (IsInstanceOf<NbtIntClass>(args[0 ])) {
1284- nbt->add (* NbtIntClass::extract (args[0 ])->copy ());
1284+ nbt->add (NbtIntClass::extract (args[0 ])->copy ());
12851285 } else if (IsInstanceOf<NbtLongClass>(args[0 ])) {
1286- nbt->add (* NbtLongClass::extract (args[0 ])->copy ());
1286+ nbt->add (NbtLongClass::extract (args[0 ])->copy ());
12871287 } else if (IsInstanceOf<NbtFloatClass>(args[0 ])) {
1288- nbt->add (* NbtFloatClass::extract (args[0 ])->copy ());
1288+ nbt->add (NbtFloatClass::extract (args[0 ])->copy ());
12891289 } else if (IsInstanceOf<NbtDoubleClass>(args[0 ])) {
1290- nbt->add (* NbtDoubleClass::extract (args[0 ])->copy ());
1290+ nbt->add (NbtDoubleClass::extract (args[0 ])->copy ());
12911291 } else if (IsInstanceOf<NbtStringClass>(args[0 ])) {
1292- nbt->add (* NbtStringClass::extract (args[0 ])->copy ());
1292+ nbt->add (NbtStringClass::extract (args[0 ])->copy ());
12931293 } else if (IsInstanceOf<NbtByteArrayClass>(args[0 ])) {
1294- nbt->add (* NbtByteArrayClass::extract (args[0 ])->copy ());
1294+ nbt->add (NbtByteArrayClass::extract (args[0 ])->copy ());
12951295 } else if (IsInstanceOf<NbtListClass>(args[0 ])) {
1296- nbt->add (* NbtListClass::extract (args[0 ])->copyList ());
1296+ nbt->add (NbtListClass::extract (args[0 ])->copyList ());
12971297 } else if (IsInstanceOf<NbtCompoundClass>(args[0 ])) {
1298- nbt->add (* NbtCompoundClass::extract (args[0 ])->clone ());
1298+ nbt->add (NbtCompoundClass::extract (args[0 ])->clone ());
12991299 } else {
13001300 LOG_ERROR_WITH_SCRIPT_INFO (__FUNCTION__, " Unknown type! Cannot add Tag into List" );
13011301 return Local<Value>();
0 commit comments