fix: validate displayId range and skip missing equipment textures

Reject displayId values >100k (corrupted update-field data) to avoid
pointless DBC lookups and log spam. Add fileExists() guard before
using base texture path in 4 equipment compositing code paths that
were falling through without checking, causing excessive "Texture not
found" warnings when users have incomplete MPQ extractions.
This commit is contained in:
Kelsi 2026-04-14 04:20:28 -07:00
parent 2f3a973444
commit 83eef878fb
4 changed files with 18 additions and 5 deletions

View file

@ -315,9 +315,10 @@ void GameScreen::updateCharacterTextures(game::Inventory& inventory) {
fullPath = genderPath;
} else if (assetManager->fileExists(unisexPath)) {
fullPath = unisexPath;
} else {
// Last resort: try without suffix
} else if (assetManager->fileExists(base + ".blp")) {
fullPath = base + ".blp";
} else {
continue;
}
regionLayers.emplace_back(region, fullPath);
}