summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/client.cpp11
-rw-r--r--src/client.h2
2 files changed, 10 insertions, 3 deletions
diff --git a/src/client.cpp b/src/client.cpp
index 5bd3bd163..598c95cc0 100644
--- a/src/client.cpp
+++ b/src/client.cpp
@@ -697,6 +697,12 @@ int Client::testsExec()
top->add(var);
+void Client::stateConnectGame1()
+{
+ if (gameHandler->isConnected())
+ loginHandler->disconnect();
+}
+
int Client::gameExec()
{
int lastTickTime = tick_time;
@@ -759,10 +765,9 @@ int Client::gameExec()
BLOCK_END("~Client::SDL_framerateDelay")
BLOCK_START("Client::gameExec 6")
- if (mState == STATE_CONNECT_GAME &&
- gameHandler->isConnected())
+ if (mState == STATE_CONNECT_GAME)
{
- loginHandler->disconnect();
+ stateConnectGame1();
}
else if (mState == STATE_CONNECT_SERVER &&
mOldState == STATE_CHOOSE_SERVER)
diff --git a/src/client.h b/src/client.h
index 880a11fb7..84329f54a 100644
--- a/src/client.h
+++ b/src/client.h
@@ -112,6 +112,8 @@ class Client final : public ConfigListener,
static void logVars();
+ void stateConnectGame1();
+
ServerInfo mCurrentServer;
Game *mGame;