From d5d38cf61d5e8664eb3a1b48863bf8a835e7f28c Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Sat, 5 Nov 2011 18:14:11 +0300 Subject: Fix double network error dialog. --- src/game.cpp | 33 +++++++++++++++------------------ 1 file changed, 15 insertions(+), 18 deletions(-) diff --git a/src/game.cpp b/src/game.cpp index 14e6806ce..a9fa318f7 100644 --- a/src/game.cpp +++ b/src/game.cpp @@ -557,28 +557,25 @@ void Game::logic() return; // Not a problem here if (Client::getState() != STATE_ERROR) - errorMessage = _("The connection to the server was lost."); - - if (!disconnectedDialog) { - if (viewport) - { - Map *map = viewport->getCurrentMap(); - if (map) - map->saveExtraLayer(); - } - closeDialogs(); - Client::setFramerate(config.getIntValue("fpslimit")); - if (logger) + errorMessage = _("The connection to the server was lost."); + if (!disconnectedDialog) { - logger->log("Show error message on state: %d", - Client::getState()); + disconnectedDialog = new OkDialog(_("Network Error"), + errorMessage, false); + disconnectedDialog->addActionListener(&errorListener); + disconnectedDialog->requestMoveToTop(); } - disconnectedDialog = new OkDialog(_("Network Error"), - errorMessage, false); - disconnectedDialog->addActionListener(&errorListener); - disconnectedDialog->requestMoveToTop(); } + + if (viewport) + { + Map *map = viewport->getCurrentMap(); + if (map) + map->saveExtraLayer(); + } + closeDialogs(); + Client::setFramerate(config.getIntValue("fpslimit")); } else { -- cgit v1.2.3-70-g09d2