From 3a505cd55973a7c9000e00f0c4e1a5610d6b0bd9 Mon Sep 17 00:00:00 2001 From: simoleo89 Date: Thu, 4 Jun 2026 21:16:55 +0200 Subject: [PATCH] fix(items): null-safe getDisplayName + log missing items.furnidata.path --- .../eu/habbo/habbohotel/items/FurnitureTextProvider.java | 4 +++- .../src/main/java/com/eu/habbo/habbohotel/items/Item.java | 7 +++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/Emulator/src/main/java/com/eu/habbo/habbohotel/items/FurnitureTextProvider.java b/Emulator/src/main/java/com/eu/habbo/habbohotel/items/FurnitureTextProvider.java index 6caa2075..ae7e501b 100644 --- a/Emulator/src/main/java/com/eu/habbo/habbohotel/items/FurnitureTextProvider.java +++ b/Emulator/src/main/java/com/eu/habbo/habbohotel/items/FurnitureTextProvider.java @@ -56,7 +56,9 @@ public class FurnitureTextProvider { String override = Emulator.getConfig().getValue("items.furnidata.path", ""); if (!override.isEmpty()) { Path p = Paths.get(override); - return Files.exists(p) ? p : null; + if (Files.exists(p)) return p; + LOGGER.warn("FurnitureTextProvider: items.furnidata.path '{}' does not exist", override); + return null; } String basePath = Emulator.getConfig().getValue("furni.editor.asset.base.path", ""); if (basePath.isEmpty()) return null; diff --git a/Emulator/src/main/java/com/eu/habbo/habbohotel/items/Item.java b/Emulator/src/main/java/com/eu/habbo/habbohotel/items/Item.java index 4fcecb85..f0ca1719 100644 --- a/Emulator/src/main/java/com/eu/habbo/habbohotel/items/Item.java +++ b/Emulator/src/main/java/com/eu/habbo/habbohotel/items/Item.java @@ -173,9 +173,12 @@ public class Item implements ISerialize { * Never returns null. */ public String getDisplayName() { - FurnitureTextProvider provider = Emulator.getGameEnvironment().getFurnitureTextProvider(); + FurnitureTextProvider provider = (Emulator.getGameEnvironment() != null) + ? Emulator.getGameEnvironment().getFurnitureTextProvider() + : null; String name = (provider != null) ? provider.getName(this.name) : null; - return (name != null && !name.isBlank()) ? name : this.fullName; + if (name != null && !name.isBlank()) return name; + return (this.fullName != null) ? this.fullName : ""; } public FurnitureType getType() {