From c4560ae9f1f201c40f09b108e1182b80ee314fc4 Mon Sep 17 00:00:00 2001 From: yugecin Date: Wed, 18 Jan 2017 19:44:54 +0100 Subject: [PATCH] stop loading stuff when close is requested in splash state --- src/itdelatrisu/opsu/states/Splash.java | 14 ++++++++++++++ 1 file changed, 14 insertions(+) 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) {