diff --git a/src/main/java/org/embeddedt/modernfix/mixin/safety/BlockColorsMixin.java b/src/main/java/org/embeddedt/modernfix/mixin/safety/BlockColorsMixin.java index fd5e407f..fb36013f 100644 --- a/src/main/java/org/embeddedt/modernfix/mixin/safety/BlockColorsMixin.java +++ b/src/main/java/org/embeddedt/modernfix/mixin/safety/BlockColorsMixin.java @@ -16,11 +16,11 @@ import java.util.concurrent.locks.ReentrantLock; public class BlockColorsMixin { private Lock mapLock = new ReentrantLock(); @Inject(method = "register", at = @At("HEAD")) - private void lockMapBeforeAccess(BlockColor pBlockColor, Block[] pBlocks, CallbackInfo ci) { + private void lockMapBeforeAccess(CallbackInfo ci) { mapLock.lock(); } @Inject(method = "register", at = @At("TAIL")) - private void unlockMap(BlockColor pBlockColor, Block[] pBlocks, CallbackInfo ci) { + private void unlockMap(CallbackInfo ci) { mapLock.unlock(); } } diff --git a/src/main/java/org/embeddedt/modernfix/mixin/safety/ItemColorsMixin.java b/src/main/java/org/embeddedt/modernfix/mixin/safety/ItemColorsMixin.java new file mode 100644 index 00000000..628fb721 --- /dev/null +++ b/src/main/java/org/embeddedt/modernfix/mixin/safety/ItemColorsMixin.java @@ -0,0 +1,23 @@ +package org.embeddedt.modernfix.mixin.safety; + +import net.minecraft.client.color.item.ItemColors; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +@Mixin(value = ItemColors.class, priority = 700) +public class ItemColorsMixin { + private Lock mapLock = new ReentrantLock(); + @Inject(method = "register", at = @At("HEAD")) + private void lockMapBeforeAccess(CallbackInfo ci) { + mapLock.lock(); + } + @Inject(method = "register", at = @At("TAIL")) + private void unlockMap(CallbackInfo ci) { + mapLock.unlock(); + } +} diff --git a/src/main/resources/modernfix.mixins.json b/src/main/resources/modernfix.mixins.json index 38a48888..979de7f3 100644 --- a/src/main/resources/modernfix.mixins.json +++ b/src/main/resources/modernfix.mixins.json @@ -98,6 +98,7 @@ "perf.async_jei.RecipeManagerInternalMixin", "perf.thread_priorities.IntegratedServerMixin", "safety.BlockColorsMixin", + "safety.ItemColorsMixin", "perf.flatten_model_predicates.AndConditionMixin", "perf.flatten_model_predicates.OrConditionMixin", "perf.flatten_model_predicates.PropertyValueConditionMixin",