From 86c6e90436cb4b2c774c617fea89f6997a341459 Mon Sep 17 00:00:00 2001 From: embeddedt <42941056+embeddedt@users.noreply.github.com> Date: Thu, 2 Nov 2023 13:35:25 -0400 Subject: [PATCH] Support closed flag on BufferBuilders Thanks to Moulberry for noting this vanilla change --- .../mixin/bugfix/buffer_builder_leak/BufferBuilderMixin.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/common/src/main/java/org/embeddedt/modernfix/common/mixin/bugfix/buffer_builder_leak/BufferBuilderMixin.java b/common/src/main/java/org/embeddedt/modernfix/common/mixin/bugfix/buffer_builder_leak/BufferBuilderMixin.java index 98237da3..a2a379c4 100644 --- a/common/src/main/java/org/embeddedt/modernfix/common/mixin/bugfix/buffer_builder_leak/BufferBuilderMixin.java +++ b/common/src/main/java/org/embeddedt/modernfix/common/mixin/bugfix/buffer_builder_leak/BufferBuilderMixin.java @@ -14,6 +14,7 @@ import java.nio.ByteBuffer; @Mixin(BufferBuilder.class) public class BufferBuilderMixin { @Shadow private ByteBuffer buffer; + @Shadow private boolean closed; private static boolean leakReported = false; @@ -30,7 +31,7 @@ public class BufferBuilderMixin { try { ByteBuffer buf = buffer; // can be null if a mod already tried to free the buffer - if(buf != null) { + if(!this.closed && buf != null) { if(!leakReported) { leakReported = true; ModernFix.LOGGER.warn("One or more BufferBuilders have been leaked, ModernFix will attempt to correct this.");