diff --git a/src/itdelatrisu/opsu/states/Splash.java b/src/itdelatrisu/opsu/states/Splash.java index 73445a75..c832408f 100644 --- a/src/itdelatrisu/opsu/states/Splash.java +++ b/src/itdelatrisu/opsu/states/Splash.java @@ -37,6 +37,7 @@ import java.io.File; import org.newdawn.slick.Color; import org.newdawn.slick.Graphics; import org.newdawn.slick.Input; +import org.newdawn.slick.util.Log; import yugecin.opsudance.core.DisplayContainer; import yugecin.opsudance.core.inject.InstanceContainer; import yugecin.opsudance.core.state.BaseOpsuState; @@ -182,6 +183,19 @@ public class Splash extends BaseOpsuState { } } + @Override + public boolean onCloseRequest() { + if (thread != null && thread.isAlive()) { + thread.interrupt(); + try { + thread.join(); + } catch (InterruptedException e) { + Log.warn("InterruptedException while waiting for splash thread to die", e); + } + } + return true; + } + @Override public boolean keyPressed(int key, char c) { if (key != Input.KEY_ESCAPE) {