diff options
author | rubidium <rubidium@openttd.org> | 2006-12-26 11:47:31 +0000 |
---|---|---|
committer | rubidium <rubidium@openttd.org> | 2006-12-26 11:47:31 +0000 |
commit | 24bb55e0799b043e6f2028944a144d1936251872 (patch) | |
tree | 6ed7f9c4098595c494f840805bf5266398aaf904 | |
parent | 404859378afb2a72a827459b05d5252483c1fbef (diff) | |
download | openttd-24bb55e0799b043e6f2028944a144d1936251872.tar.xz |
(svn r7560) -Fix (r2300): p2 is not a PlayerID when creating a new company, but the ClientID (index in _network_client_info). Therefore it was not possible to create a new company if 8 or more clients were connected. Thanks to FlashFF for noticing this bug.
-rw-r--r-- | players.c | 5 |
1 files changed, 2 insertions, 3 deletions
@@ -820,9 +820,8 @@ int32 CmdPlayerCtrl(TileIndex tile, uint32 flags, uint32 p1, uint32 p2) /* This command is only executed in a multiplayer game */ if (!_networking) return CMD_ERROR; - /* ClientID would be valid up to MAX_CLIENT_INFO, but as it has to be a - * new player, its valid range is restricted to that of players */ - if (!(flags & DC_EXEC) || !IsValidPlayer((PlayerID)cid)) return 0; + /* Has the network client a correct ClientID? */ + if (!(flags & DC_EXEC) || cid >= MAX_CLIENT_INFO) return 0; /* Delete multiplayer progress bar */ DeleteWindowById(WC_NETWORK_STATUS_WINDOW, 0); |