Asek3 / Rubidium

Rubidium is an Unofficial Fork of CaffeineMC's "Sodium", made to work with Forge Mod Loader.
GNU Lesser General Public License v3.0
118 stars 56 forks source link

[1.19.2] Game doesn't close and must be killed #541

Open crazybrain23 opened 1 year ago

crazybrain23 commented 1 year ago

Details

Minecraft: 1.19.2 Java: OpenJDK 17.0.7 LWJGL 3.3.1 Forge: 43.2.0 OS: Arch Linux Prism Launcher Rubidium: 0.6.2b No other mods Debug log: debug.log

How to Reproduce

  1. Launch Minecraft with Rubidium
  2. Load a singleplayer or multiplayer world
  3. Quit the game
  4. Game is still "running" in the background
  5. Kill the game manually

Additional

I could not reproduce with Sodium on Fabric.

Asek3 commented 1 year ago

Are you sure this doesn't happen on clear Forge instance without Rubidium?

crazybrain23 commented 1 year ago

Are you sure this doesn't happen on clear Forge instance without Rubidium?

Yes, because removing Rubidium from a modpack causes the bug to go away. I've tested it in a modpack (both with and without) and just Rubidium on it's own. The bug is only present with Rubidium installed.

crazybrain23 commented 1 year ago

Are you sure this doesn't happen on clear Forge instance without Rubidium? minecraft: 1.19.2 forge: 43.2.21 rubidium: 0.6.2b

Here's logs with and without Rubidium. justforge-debug.log rubidium-debug.log The Rubidium version has an OpenGL error at the end.

[07Aug2023 17:16:40.428] [Thread-16/ERROR] [net.minecraftforge.eventbus.EventSubclassTransformer/EVENTBUS]: An error occurred building event handler
java.lang.NullPointerException: Cannot invoke "java.lang.ClassLoader.loadClass(String)" because the return value of "java.lang.Thread.getContextClassLoader()" is null
    at net.minecraftforge.eventbus.EventSubclassTransformer.buildEvents(EventSubclassTransformer.java:92) ~[eventbus-6.0.3.jar:?]
    at net.minecraftforge.eventbus.EventSubclassTransformer.transform(EventSubclassTransformer.java:44) ~[eventbus-6.0.3.jar:?]
    at net.minecraftforge.eventbus.EventBusEngine.processClass(EventBusEngine.java:26) ~[eventbus-6.0.3.jar:?]
    at net.minecraftforge.eventbus.service.ModLauncherService.processClassWithFlags(ModLauncherService.java:32) ~[eventbus-6.0.3.jar:6.0.3+6.0.3+master.039e4ea9]
    at cpw.mods.modlauncher.LaunchPluginHandler.offerClassNodeToPlugins(LaunchPluginHandler.java:88) ~[modlauncher-10.0.8.jar:?]
    at cpw.mods.modlauncher.ClassTransformer.transform(ClassTransformer.java:120) ~[modlauncher-10.0.8.jar:?]
    at cpw.mods.modlauncher.TransformingClassLoader.maybeTransformClassBytes(TransformingClassLoader.java:50) ~[modlauncher-10.0.8.jar:?]
    at cpw.mods.cl.ModuleClassLoader.readerToClass(ModuleClassLoader.java:113) ~[securejarhandler-2.1.4.jar:?]
    at cpw.mods.cl.ModuleClassLoader.lambda$findClass$15(ModuleClassLoader.java:219) ~[securejarhandler-2.1.4.jar:?]
    at cpw.mods.cl.ModuleClassLoader.loadFromModule(ModuleClassLoader.java:229) ~[securejarhandler-2.1.4.jar:?]
    at cpw.mods.cl.ModuleClassLoader.findClass(ModuleClassLoader.java:219) ~[securejarhandler-2.1.4.jar:?]
    at cpw.mods.cl.ModuleClassLoader.loadClass(ModuleClassLoader.java:135) ~[securejarhandler-2.1.4.jar:?]
    at java.lang.ClassLoader.loadClass(ClassLoader.java:525) ~[?:?]
    at com.mojang.blaze3d.platform.GlDebug.m_84038_(GlDebug.java:95) ~[?:?]
    at org.lwjgl.opengl.GLDebugMessageCallbackI.callback(GLDebugMessageCallbackI.java:46) [lwjgl-opengl-3.3.1.jar%2379!/:build 7]
[07Aug2023 17:16:40.446] [Thread-16/INFO] [com.mojang.blaze3d.platform.GlDebug/]: OpenGL debug message: id=1282, source=API, type=ERROR, severity=HIGH, message='GL_INVALID_OPERATION error generated. Cannot modify immutable buffer.'

I also tried in 1.20.1 and it worked fine, so it might only affect the 1.19.2.

djsimmonds commented 1 year ago

Hi, just to confirm the same bug for 1.19.2. Tested in instance with only forge 43.2.0 and Rubidium 0.6.2b. If game is started and quit before creating/loading a world, the game quits fine. However, if a world is created/loaded, then quit, it goes to the main menu, but the when the quit game button is pressed, the window closes, but the instance is still running and needs to be killed. Using linux and multimc. https://pastebin.com/7gPiYiXH

Flemmli97 commented 1 year ago

also the case for 1.18.2 versions. seems to be present since rubidium 0.5.4 since downgrading to any versions below that does not cause this problem

CUexter commented 1 year ago

i can confirm this also happens on 0.6.2c

CUexter commented 1 year ago

I also noticed that this bug cannot be reproduced on windows

CUexter commented 1 year ago

I also can't reproduce the bug on Fedora silverblue running in a vm.

sjoerd108 commented 4 months ago

Can confirm on Arch, MC 1.19.2 with Prism & ATLauncher yielding the same result