diff -r 610b26560a54 -r 25cfd71b68e6 src/players.cpp --- a/src/players.cpp Fri Apr 25 16:33:40 2008 +0000 +++ b/src/players.cpp Sat Apr 26 14:20:39 2008 +0000 @@ -461,6 +461,8 @@ /* Find a free slot */ FOR_ALL_PLAYERS(p) { if (!p->is_active) { + free(p->name); + free(p->president_name); PlayerID i = p->index; memset(p, 0, sizeof(Player)); memset(&_players_ai[i], 0, sizeof(PlayerAI)); @@ -918,9 +920,6 @@ ChangeOwnershipOfPlayerItems(p->index, PLAYER_SPECTATOR); p->is_active = false; } - RemoveAllEngineReplacementForPlayer(p); - RemoveAllGroupsForPlayer(p->index); - } break; case 3: { /* Merge a company (#1) into another company (#2), elimination company #1 */