GiveCommand: don't crash on bogus item NBT

This commit is contained in:
Dylan K. Taylor 2021-10-05 19:09:46 +01:00
parent dbeaf27cb7
commit fef8297907
No known key found for this signature in database
GPG Key ID: 8927471A91CAFD3D

View File

@ -32,6 +32,7 @@ use pocketmine\item\StringToItemParser;
use pocketmine\lang\KnownTranslationFactory;
use pocketmine\nbt\JsonNbtParser;
use pocketmine\nbt\NbtDataException;
use pocketmine\nbt\NbtException;
use pocketmine\permission\DefaultPermissionNames;
use pocketmine\utils\TextFormat;
use function array_slice;
@ -86,7 +87,12 @@ class GiveCommand extends VanillaCommand{
return true;
}
$item->setNamedTag($tags);
try{
$item->setNamedTag($tags);
}catch(NbtException $e){
$sender->sendMessage(KnownTranslationFactory::commands_give_tagError($e->getMessage()));
return true;
}
}
//TODO: overflow