Attached is a new version of the patch. The old one didn't apply cleanly
because of a mixup of line endings.


  Chris
--- pyscrabble-1.6.2/pyscrabble/net/server.py	2011-07-14 19:32:42.000000000 +0200
+++ pyscrabble-fixed/pyscrabble/net/server.py	2011-07-14 19:35:50.000000000 +0200
@@ -936,21 +936,21 @@
             client.denyJoinGame(command)
             return
         
-        if (game.getNumberOfPlayers() == constants.MAX_PLAYERS):
-            command.setData( ServerMessage([GAME_FULL]) )
-            command.setCommand( constants.GAME_JOIN_DENIED )
-            client.denyJoinGame(command)
-            return
-
         p = self.clients[client].clone()
         
-        if (game.isPaused() and not game.hasPlayer(p)):
-            command.setData( ServerMessage([CANNOT_JOIN_STARTED]) )
-            command.setCommand( constants.GAME_JOIN_DENIED )
-            client.denyJoinGame(command)
-            return
-
         if not game.hasPlayer( p ):
+            if (game.getNumberOfPlayers() == constants.MAX_PLAYERS):
+                command.setData( ServerMessage([GAME_FULL]) )
+                command.setCommand( constants.GAME_JOIN_DENIED )
+                client.denyJoinGame(command)
+                return
+
+            if (game.isPaused()):
+                command.setData( ServerMessage([CANNOT_JOIN_STARTED]) )
+                command.setCommand( constants.GAME_JOIN_DENIED )
+                client.denyJoinGame(command)
+                return
+
             game.addPlayer( p )
         else:
             game.removePending( p )

Reply via email to