// This: uint old_rate = t->growth_rate; if (p2 == TOWN_GROW_RATE_NORMAL) t->growth_rate = GetNormalGrowthRate(t); else t->growth_rate = p2 | TOWN_GROW_RATE_CUSTOM; // Should be: uint old_rate = t->growth_rate; if (p2 == TOWN_GROW_RATE_NORMAL) { t->growth_rate = GetNormalGrowthRate(t); } else { t->growth_rate = p2 | TOWN_GROW_RATE_CUSTOM; }