diff --git a/bukkit/src/main/java/org/popcraft/bolt/data/migration/lockette/LocketteMigration.java b/bukkit/src/main/java/org/popcraft/bolt/data/migration/lockette/LocketteMigration.java index 8f50ebd3..ef9537ec 100644 --- a/bukkit/src/main/java/org/popcraft/bolt/data/migration/lockette/LocketteMigration.java +++ b/bukkit/src/main/java/org/popcraft/bolt/data/migration/lockette/LocketteMigration.java @@ -284,18 +284,20 @@ private LocketteProtection fromSignMessages(final CompoundTag sign) { } else { cleaned = message.replaceAll("\"", ""); } - final boolean privateHeader = cleaned.contains("[Private]"); - final boolean moreUsersHeader = cleaned.contains("[More Users]"); + final String cleanedNormalized = cleaned.toLowerCase(); + final boolean privateHeader = cleanedNormalized.contains("[private]"); + final boolean moreUsersHeader = cleanedNormalized.contains("[more users]"); if (privateHeader || moreUsersHeader) { isValid = true; hasPrivateHeader = privateHeader; - } else if (cleaned.contains("[Everyone]")) { + } else if (cleanedNormalized.contains("[everyone]")) { isPublic = true; - } else if (cleaned.contains("[Redstone]")) { + } else if (cleanedNormalized.contains("[redstone]")) { isRedstone = true; - } else if (cleaned.contains("Timer")) { + } else if (cleanedNormalized.contains("timer")) { access.put(Source.of("door").toString(), "autoclose"); - } else { + } else if (isValid) { + // Since this involves an expensive call to look up the user, only do this when a valid sign UUID uuid; final boolean isLocketteProFormat = cleaned.contains("#"); if (isLocketteProFormat) {