I've found the problem with not being able to join a lan game. It's a simple race condition: the client automatically connects to the first game, but doesn't wait for the list of games to arrive. It happly reads the first item of an empty list.
I've attached a two-line fix (as both a bundle and a patch, whatever is preferred.) But there's another problem: the game reports a desync immediately. Strangely enough, the world dumps are identical. For now I just disabled the desync check and played four or five games without a problem. (I would put all of this on savanna, but I can't get it to load on my cellphone internet connection.) MWM
lanfix-bundle
Description: Binary data
diff -r 8cfb4b72712a src/LANFindScreen.cpp --- a/src/LANFindScreen.cpp Tue Dec 25 20:17:47 2007 +0100 +++ b/src/LANFindScreen.cpp Wed Jan 02 23:28:10 2008 -0300 @@ -107,6 +107,10 @@ void LANFindScreen::onAction(Widget *sou boost::shared_ptr<MultiplayerGame> game(new MultiplayerGame(client)); client->setMultiplayerGame(game); + + while (client->getGameList().size() == 0) + client->update(); + game->joinGame((*client->getGameList().begin()).getGameID()); boost::shared_ptr<NetTextMessageHandler> netMessage(new NetTextMessageHandler(client));
_______________________________________________ glob2-devel mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/glob2-devel
