Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

LibGDX crash due to modifications in LobbyPlayerList.recreate (with high network packet loss this time) #84

Open
CrsiX opened this issue Jun 25, 2023 · 0 comments
Labels
bug Something isn't working

Comments

@CrsiX
Copy link
Member

CrsiX commented Jun 25, 2023

Version
c69c9b3

To Reproduce
Steps to reproduce the behavior:

  1. Add heavy network packet loss, e.g. iptables -A OUTPUT -d $SERVER_IP -m statistic --mode random --probability 0.5 -j DROP (which randomly drops every second packet)
  2. Start the game and go to the lobby screen
FATAL ERROR in native method: Thread[threadpool-nondaemon-4,5,main]: No context is current or a function that is not available in the current context was called. The JVM will abort execution.
	at org.lwjgl.opengl.GL11C.glBindTexture(Native Method)
	at org.lwjgl.opengl.GL11.glBindTexture(GL11.java:854)
	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3GL20.glBindTexture(Lwjgl3GL20.java:92)
	at com.badlogic.gdx.graphics.GLTexture.bind(GLTexture.java:73)
	at com.badlogic.gdx.graphics.g2d.PixmapPacker.pack(PixmapPacker.java:259)
	- locked <0x00000007084e5850> (a com.badlogic.gdx.graphics.g2d.PixmapPacker)
	at com.badlogic.gdx.graphics.g2d.PixmapPacker.pack(PixmapPacker.java:156)
	- locked <0x00000007084e5850> (a com.badlogic.gdx.graphics.g2d.PixmapPacker)
	at com.unciv.ui.components.NativeBitmapFontData.getGlyph(Fonts.kt:119)
	at com.badlogic.gdx.graphics.g2d.BitmapFont$BitmapFontData.getGlyphs(BitmapFont.java:845)
	at com.unciv.ui.components.NativeBitmapFontData.getGlyphs(Fonts.kt:155)
	at com.badlogic.gdx.graphics.g2d.GlyphLayout.setText(GlyphLayout.java:178)
	at com.badlogic.gdx.graphics.g2d.GlyphLayout.setText(GlyphLayout.java:95)
	at com.badlogic.gdx.scenes.scene2d.ui.Label.computePrefSize(Label.java:162)
	at com.badlogic.gdx.scenes.scene2d.ui.Label.scaleAndComputePrefSize(Label.java:147)
	at com.badlogic.gdx.scenes.scene2d.ui.Label.getPrefWidth(Label.java:244)
	at com.badlogic.gdx.scenes.scene2d.ui.Label.<init>(Label.java:75)
	at com.unciv.ui.components.extensions.Scene2dExtensionsKt.toLabel(Scene2dExtensions.kt:258)
	at com.unciv.ui.components.extensions.Scene2dExtensionsKt.toLabel$default(Scene2dExtensions.kt:246)
	at com.unciv.ui.screens.multiplayerscreens.LobbyPlayerList$recreate$1.invokeSuspend(LobbyPlayerList.kt:108)
	at com.unciv.ui.screens.multiplayerscreens.LobbyPlayerList$recreate$1.invoke(LobbyPlayerList.kt)
	at com.unciv.ui.screens.multiplayerscreens.LobbyPlayerList$recreate$1.invoke(LobbyPlayerList.kt)
	at com.unciv.utils.Concurrency$runBlocking$1.invokeSuspend(Concurrency.kt:47)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
	at com.unciv.utils.CrashHandlingDispatcher$dispatch$1.invoke(Concurrency.kt:173)
	at com.unciv.utils.CrashHandlingDispatcher$dispatch$1.invoke(Concurrency.kt:173)
	at com.unciv.ui.crashhandling.CrashHandlingExtensionsKt$wrapCrashHandling$1.invoke(CrashHandlingExtensions.kt:17)
	at com.unciv.ui.crashhandling.CrashHandlingExtensionsKt$wrapCrashHandlingUnit$1.invoke(CrashHandlingExtensions.kt:33)
	at com.unciv.ui.crashhandling.CrashHandlingExtensionsKt$wrapCrashHandlingUnit$1.invoke(CrashHandlingExtensions.kt:33)
	at com.unciv.utils.CrashHandlingDispatcher.dispatch$lambda$0(Concurrency.kt:173)
	at com.unciv.utils.CrashHandlingDispatcher$$Lambda$91/0x0000000840116840.run(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor.runWorker([email protected]/ThreadPoolExecutor.java:1128)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run([email protected]/ThreadPoolExecutor.java:628)
	at java.lang.Thread.run([email protected]/Thread.java:829)
terminated by signal SIGABRT (Abort)
@CrsiX CrsiX added the bug Something isn't working label Jun 25, 2023
@CrsiX CrsiX changed the title LibGDX crash due to modifications in LobbyPlayerList.recreate LibGDX crash due to modifications in LobbyPlayerList.recreate (with high network packet loss this time) Jun 25, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant