mojira.dev
MCPE-7091

CompoundTag::putLong has wrong parameter type (should be long long, not long)

The NBT library included in MCPE can load TAG_Long values fine, but when saving, only 32 bits are saved, because the save method is declared as

CompoundTag::putLong(std::string const&, long)

when it should be declared as

CompoundTag::putLong(std::string const&, long long)

On ARM, long is a 32-bit integer, and long long is the 64 bit integer.

This affects world time and world seed, since as far as I know those values are the only values stored as longs.

Linked issues

Comments 2

[Mojang] Shoghi Cervantes

World seed is sent as a 32-bit Integer, and if I remember right, it was saved as a 32-bit number

Delvin4519

MCPE is the only version of Minecraft using 32bit, Java and 4J studios Console edition use 64bit. So it limits possibilites of world seeds

Zhuowei Zhang

(Unassigned)

Unconfirmed

Tablet - Android - Asus Nexus 7

0.8.1

0.9.0 Build 1

Retrieved