diff --git a/fabric/src/main/java/org/embeddedt/modernfix/fabric/mixin/perf/dynamic_resources/ModelBakeryMixin.java b/fabric/src/main/java/org/embeddedt/modernfix/fabric/mixin/perf/dynamic_resources/ModelBakeryMixin.java index 873d44ba..8163fccd 100644 --- a/fabric/src/main/java/org/embeddedt/modernfix/fabric/mixin/perf/dynamic_resources/ModelBakeryMixin.java +++ b/fabric/src/main/java/org/embeddedt/modernfix/fabric/mixin/perf/dynamic_resources/ModelBakeryMixin.java @@ -253,8 +253,10 @@ public abstract class ModelBakeryMixin implements IExtendedModelBakery { // As in pathological cases (e.g. Pedestals on 1.19) unbakedCache can lose // the model immediately UnbakedModel result = smallLoadingCache.getOrDefault(modelLocation, iunbakedmodel); - // required as some mods (e.g. EBE) call bake directly on the returned model, without resolving parents themselves - result.getMaterials(this::getModel, new HashSet<>()); + try { + // required as some mods (e.g. EBE) call bake directly on the returned model, without resolving parents themselves + result.getMaterials(this::getModel, new HashSet<>()); + } catch(RuntimeException ignored) {} // We are done with loading, so clear this cache to allow GC of any unneeded models if(mfix$nestedLoads == 0) smallLoadingCache.clear(); diff --git a/forge/src/main/java/org/embeddedt/modernfix/forge/mixin/perf/dynamic_resources/ModelBakeryMixin.java b/forge/src/main/java/org/embeddedt/modernfix/forge/mixin/perf/dynamic_resources/ModelBakeryMixin.java index 6f7816ad..677bfce1 100644 --- a/forge/src/main/java/org/embeddedt/modernfix/forge/mixin/perf/dynamic_resources/ModelBakeryMixin.java +++ b/forge/src/main/java/org/embeddedt/modernfix/forge/mixin/perf/dynamic_resources/ModelBakeryMixin.java @@ -234,8 +234,10 @@ public abstract class ModelBakeryMixin implements IExtendedModelBakery { // As in pathological cases (e.g. Pedestals on 1.19) unbakedCache can lose // the model immediately UnbakedModel result = smallLoadingCache.getOrDefault(modelLocation, iunbakedmodel); - // required as some mods (e.g. EBE) call bake directly on the returned model, without resolving parents themselves - result.getMaterials(this::getModel, new HashSet<>()); + try { + // required as some mods (e.g. EBE) call bake directly on the returned model, without resolving parents themselves + result.getMaterials(this::getModel, new HashSet<>()); + } catch(RuntimeException ignored) {} // We are done with loading, so clear this cache to allow GC of any unneeded models if(mfix$nestedLoads == 0) smallLoadingCache.clear();