diff --git a/JavaApp/src/main/java/org/lwjgl/glfw/GLFW.java b/JavaApp/src/main/java/org/lwjgl/glfw/GLFW.java index 82c75d72..06b61223 100644 --- a/JavaApp/src/main/java/org/lwjgl/glfw/GLFW.java +++ b/JavaApp/src/main/java/org/lwjgl/glfw/GLFW.java @@ -783,7 +783,8 @@ public class GLFW if (!isGLFWReady) { mGLFWInitialTime = (double) System.nanoTime(); long __functionAddress = Functions.Init; - isGLFWReady = invokeI(__functionAddress) != 0; + boolean isCalledFromLWJGLX = new Throwable().getStackTrace()[1].getClassName().equals("org.lwjgl.Sys"); + isGLFWReady = invokeI(!isCalledFromLWJGLX, __functionAddress) != 0; } return isGLFWReady; } diff --git a/Natives/MinecraftResourceUtils.m b/Natives/MinecraftResourceUtils.m index b842740f..017c6575 100644 --- a/Natives/MinecraftResourceUtils.m +++ b/Natives/MinecraftResourceUtils.m @@ -302,8 +302,6 @@ static AFURLSessionManager* manager; library[@"downloads"][@"artifact"][@"path"] = @"net/java/dev/jna/jna/5.13.0/jna-5.13.0.jar"; library[@"downloads"][@"artifact"][@"url"] = @"https://repo1.maven.org/maven2/net/java/dev/jna/jna/5.13.0/jna-5.13.0.jar"; library[@"downloads"][@"artifact"][@"sha1"] = @"1200e7ebeedbe0d10062093f32925a912020e747"; - } else if ([library[@"name"] hasPrefix:@"org.lwjgl:lwjgl:"]) { - isUseStackQueueCall = [library[@"name"] hasPrefix:@"org.lwjgl:lwjgl:3"]; } } diff --git a/Natives/egl_bridge.m b/Natives/egl_bridge.m index e159eda1..5e7a62e4 100644 --- a/Natives/egl_bridge.m +++ b/Natives/egl_bridge.m @@ -209,8 +209,9 @@ void loadSymbolsVirGL() { vtest_swap_buffers_p = dlsym(handle, "vtest_swap_buffers"); } -int pojavInit() { +int pojavInit(BOOL useStackQueue) { isInputReady = 1; + isUseStackQueueCall = useStackQueue; mainThreadID = gettid(); return JNI_TRUE; }