Project

General

Profile

Bug #2441 ยป 0001-ai-default-Clean-up-on-every-early-return-from-cityr.patch

Sweet Tea Dorminy, 11/02/2026 06:02 PM

View differences:

ai/default/daisettler.c
if (result->city_center.tdc == nullptr) {
fc_assert(result->city_center.tdc != nullptr);
pplayer->government = curr_govt;
if (virtual_city) {
destroy_city_virtual(pcity);
tile_set_owner(result->tile, saved_owner, saved_claimer);
}
cityresult_destroy(result);
return nullptr;
}
......
} else {
/* There is no available tile in this city. All is worked. */
result->total = 0;
pplayer->government = curr_govt;
return result;
}
......
tile_set_owner(result->tile, saved_owner, saved_claimer);
}
fc_assert_ret_val(result->city_center.tdc->sum >= 0, nullptr);
fc_assert_ret_val(result->remaining >= 0, nullptr);
if (result->city_center.tdc->sum < 0 || result->remaining < 0) {
fc_assert(result->city_center.tdc->sum >= 0);
fc_assert(result->remaining >= 0);
cityresult_destroy(result);
return nullptr;
}
return result;
}
    (1-1/1)