(svn r5440) -Backport: rev 5428 -Fix: [vehicles] sovled crash when trying to build a vehicle type, that is set to max 0 (spotted by roboman)

This commit is contained in:
bjarni 2006-07-01 10:46:50 +00:00
parent ebae6200c0
commit f0ba57ea82
1 changed files with 8 additions and 0 deletions

View File

@ -2025,6 +2025,14 @@ UnitID GetFreeUnitNumber(byte type)
default: assert(0);
}
if (max == 0) {
/* we can't build any of this kind of vehicle, so we just return 1 instead of looking for a free number
* a max of 0 will cause the following code to write to a NULL pointer
* We know that 1 is bigger than the max allowed vehicle number, so it's the same as returning something, that is too big
*/
return 1;
}
if (max > gmax) {
gmax = max;
free(cache);