(svn r7138) -Fix: [vehicle list windows] fixed a rare crash where having some (not all) vehicle list windows open for a player, that goes bankrupt would crash the game

-Codechange: closing all windows for a player will now loop all windows and close those, which got the player as caption instead of having a list of windows to close
This commit is contained in:
bjarni
2006-11-13 20:33:51 +00:00
parent 7a412adb71
commit 0724b07575
5 changed files with 42 additions and 21 deletions

View File

@@ -26,6 +26,7 @@
#include "engine.h"
#include "ai/ai.h"
#include "date.h"
#include "window.h"
uint16 GetDrawStringPlayerColor(PlayerID player)
@@ -616,19 +617,6 @@ void PlayersYearlyLoop(void)
}
}
void DeletePlayerWindows(PlayerID pi)
{
DeleteWindowById(WC_COMPANY, pi);
DeleteWindowById(WC_PLAYER_COLOR, pi);
DeleteWindowById(WC_FINANCES, pi);
DeleteWindowById(WC_STATION_LIST, pi);
DeleteWindowById(WC_TRAINS_LIST, (INVALID_STATION << 16) | pi);
DeleteWindowById(WC_ROADVEH_LIST, (INVALID_STATION << 16) | pi);
DeleteWindowById(WC_SHIPS_LIST, (INVALID_STATION << 16) | pi);
DeleteWindowById(WC_AIRCRAFT_LIST, (INVALID_STATION << 16) | pi);
DeleteWindowById(WC_BUY_COMPANY, pi);
}
byte GetPlayerRailtypes(PlayerID p)
{
byte rt = 0;