Skip to content

Commit

Permalink
fix(legacy): ByteBuffer flip calls causing issues on non Java 8 versi…
Browse files Browse the repository at this point in the history
…ons. (CCBlueX#5506)
  • Loading branch information
mems01 authored Feb 1, 2025
1 parent 83ffc66 commit 866acb8
Show file tree
Hide file tree
Showing 4 changed files with 33 additions and 2 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
/*
* LiquidBounce Hacked Client
* A free open source mixin-based injection hacked client for Minecraft using Minecraft Forge.
* https://github.com/CCBlueX/LiquidBounce/
*/
package net.ccbluex.liquidbounce.utils.io

import java.nio.Buffer
import java.nio.ByteBuffer

/**
* Prevents crashes when flip() is called from higher Java versions.
*/
fun ByteBuffer.flipSafely() {
try {
flip()
} catch (ex: Exception) {
try {
(this as Buffer).flip()
} catch (any: Exception) {
any.printStackTrace()
}
}
}
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
/*
* LiquidBounce Hacked Client
* A free open source mixin-based injection hacked client for Minecraft using Minecraft Forge.
* https://github.com/CCBlueX/LiquidBounce/
*/
package net.ccbluex.liquidbounce.utils.io

import com.google.gson.*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ package net.ccbluex.liquidbounce.utils.render

import net.ccbluex.liquidbounce.LiquidBounce.CLIENT_NAME
import net.ccbluex.liquidbounce.utils.client.ClientUtils
import net.ccbluex.liquidbounce.utils.io.flipSafely
import net.minecraftforge.fml.relauncher.Side
import net.minecraftforge.fml.relauncher.SideOnly
import java.io.IOException
Expand Down Expand Up @@ -40,7 +41,7 @@ object IconUtils {
for (i in rgb)
byteBuffer.putInt(i shl 8 or (i ushr 24 and 255))

byteBuffer.flip()
byteBuffer.flipSafely()
return byteBuffer
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ import net.ccbluex.liquidbounce.utils.block.center
import net.ccbluex.liquidbounce.utils.block.toVec
import net.ccbluex.liquidbounce.utils.client.MinecraftInstance
import net.ccbluex.liquidbounce.utils.extensions.*
import net.ccbluex.liquidbounce.utils.io.flipSafely
import net.ccbluex.liquidbounce.utils.render.animation.AnimationUtil
import net.minecraft.client.gui.FontRenderer
import net.minecraft.client.gui.ScaledResolution
Expand Down Expand Up @@ -1472,7 +1473,7 @@ object RenderUtils : MinecraftInstance {
buffer.put(((pixel shr 24) and 0xFF).toByte())
}

buffer.flip()
buffer.flipSafely()

val textureID = glGenTextures()

Expand Down

0 comments on commit 866acb8

Please sign in to comment.