LegacySkinAdapter: check return value of json_encode() for resource patch

This commit is contained in:
Dylan K. Taylor 2020-10-08 21:42:07 +01:00
parent b0b08d45d5
commit 15a2fd6e4f

View File

@ -31,6 +31,7 @@ use function is_array;
use function is_string;
use function json_decode;
use function json_encode;
use function json_last_error_msg;
use function random_bytes;
use function str_repeat;
@ -43,9 +44,13 @@ class LegacySkinAdapter implements SkinAdapter{
if($geometryName === ""){
$geometryName = "geometry.humanoid.custom";
}
$resourcePatch = json_encode(["geometry" => ["default" => $geometryName]]);
if($resourcePatch === false){
throw new \RuntimeException("json_encode() failed: " . json_last_error_msg());
}
return new SkinData(
$skin->getSkinId(),
json_encode(["geometry" => ["default" => $geometryName]]),
$resourcePatch,
SkinImage::fromLegacy($skin->getSkinData()), [],
$capeImage,
$skin->getGeometryData()