diff --git a/src/main/java/mezz/jei/ingredients/IngredientFilter.java b/src/main/java/mezz/jei/ingredients/IngredientFilter.java index cbe81551..621f3693 100644 --- a/src/main/java/mezz/jei/ingredients/IngredientFilter.java +++ b/src/main/java/mezz/jei/ingredients/IngredientFilter.java @@ -103,6 +103,7 @@ public void delegateAfterBlock(Runnable runnable) { if (this.afterBlock) { runnable.run(); invalidateCache(); + buildCache(); } else { if (this.delegatedActions == null) { this.delegatedActions = new ArrayList<>(); @@ -180,7 +181,7 @@ private void buildCache() { } for (Map.Entry entry : wildcardEntries) { String prefix = entry.getKey(); - if (uid.equals(prefix) || uid.startsWith(prefix + ":")) { + if (uid.equals(prefix) || (uid.length() > prefix.length() && uid.charAt(prefix.length()) == ':' && uid.startsWith(prefix))) { groupMembershipCache.put(element, entry.getValue()); gtoc.put(entry.getValue(), element); } @@ -281,6 +282,7 @@ public void updateHidden() { for (IIngredientListElement element : this.elementSearch.getAllIngredients()) { updateHiddenState(element); } + buildCache(); } public void updateHiddenState(IIngredientListElement element) {