Project

General

Profile

Bug #2100 » 0017-path-finding-Check-against-negative-EFT_VETERAN_BUIL.patch

S3_3, S3_2 - Marko Lindqvist, 07/28/2026 03:04 PM

View differences:

common/aicore/path_finding.c
const struct player *pplayer = param->owner;
int veteran_level = get_unittype_bonus(pplayer, ptile, punittype,
NULL, EFT_VETERAN_BUILD);
int max_level = utype_veteran_levels(punittype) - 1;
if (veteran_level >= utype_veteran_levels(punittype)) {
veteran_level = utype_veteran_levels(punittype) - 1;
}
veteran_level = CLIP(0, veteran_level, max_level);
/* Fill parameter. */
param->start_tile = ptile;
common/aicore/pf_tools.c
{
int veteran_level = get_unittype_bonus(powner, pstart_tile, punittype,
NULL, EFT_VETERAN_BUILD);
int max_level = utype_veteran_levels(punittype) - 1;
if (veteran_level >= utype_veteran_levels(punittype)) {
veteran_level = utype_veteran_levels(punittype) - 1;
}
veteran_level = CLIP(0, veteran_level, max_level);
pft_fill_default_parameter(parameter, nmap, punittype);
(2-2/2)