From ecc34940b46fe9cb6afa4c45765594c782c8f945 Mon Sep 17 00:00:00 2001 From: Alex King <89047260+Kinglykrab@users.noreply.github.com> Date: Wed, 30 Nov 2022 21:31:28 -0500 Subject: [PATCH] [Bug Fix] Fix IDFile Crash with spaces or invalid data. (#2597) * [Bug Fix] Fix IDFile Crash with spaces or invalid data. * Update mob_appearance.cpp --- zone/mob_appearance.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/zone/mob_appearance.cpp b/zone/mob_appearance.cpp index 582c16711..b25216069 100644 --- a/zone/mob_appearance.cpp +++ b/zone/mob_appearance.cpp @@ -240,7 +240,7 @@ int32 Mob::GetEquipmentMaterial(uint8 material_slot) const if (inst) { if (inst->GetOrnamentationAug(ornamentation_augment_type)) { item = inst->GetOrnamentationAug(ornamentation_augment_type)->GetItem(); - if (item && strlen(item->IDFile) > 2) { + if (item && strlen(item->IDFile) > 2 && Strings::IsNumber(&item->IDFile[2])) { equipment_material = std::stoi(&item->IDFile[2]); } } else if (inst->GetOrnamentationIDFile()) { @@ -249,7 +249,7 @@ int32 Mob::GetEquipmentMaterial(uint8 material_slot) const } } - if (equipment_material == 0 && strlen(item->IDFile) > 2) { + if (!equipment_material && strlen(item->IDFile) > 2 && Strings::IsNumber(&item->IDFile[2])) { equipment_material = std::stoi(&item->IDFile[2]); } }