From dff26376fded0d81cc37139a15b7111d95a947d1 Mon Sep 17 00:00:00 2001 From: Max-Wilhelm Bruker Date: Wed, 30 Sep 2009 19:41:36 +0200 Subject: [PATCH] server bugfix --- servatrice/src/server.cpp | 4 +++- servatrice/src/servergame.cpp | 5 ++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/servatrice/src/server.cpp b/servatrice/src/server.cpp index 32aabfb4..09eead6b 100644 --- a/servatrice/src/server.cpp +++ b/servatrice/src/server.cpp @@ -156,7 +156,9 @@ void Server::broadcastChannelUpdate() void Server::gameClosing() { qDebug("Server::gameClosing"); - games.remove(games.key(static_cast(sender()))); + ServerGame *game = static_cast(sender()); + broadcastGameListUpdate(game); + games.remove(games.key(game)); } void Server::removePlayer(ServerSocket *player) diff --git a/servatrice/src/servergame.cpp b/servatrice/src/servergame.cpp index fd1cc506..85321f18 100644 --- a/servatrice/src/servergame.cpp +++ b/servatrice/src/servergame.cpp @@ -45,7 +45,7 @@ ServerGame::~ServerGame() QString ServerGame::getGameListLine() const { if (players.isEmpty()) - return QString("list_games|%1|||0|%2||0").arg(gameId).arg(maxPlayers); + return QString("list_games|%1|||0|%2||0|0").arg(gameId).arg(maxPlayers); else { QString creatorName = creator ? creator->getPlayerName() : QString(); return QString("list_games|%1|%2|%3|%4|%5|%6|%7|%8").arg(gameId) @@ -158,8 +158,7 @@ void ServerGame::removePlayer(ServerSocket *player) if (!players.size()) deleteLater(); - if (!gameStarted) - qobject_cast(parent())->broadcastGameListUpdate(this); + qobject_cast(parent())->broadcastGameListUpdate(this); } void ServerGame::setActivePlayer(int _activePlayer)