mirror of https://github.com/OpenTTD/OpenTTD
Fix: allow input of numbers greater than INT32_MAX for GiveMoney (#8499)
Based on patch by JGR.pull/8274/head
parent
bb28ff7226
commit
f2fa2a14d7
|
@ -73,7 +73,7 @@ void HandleOnEditText(const char *str)
|
||||||
case 3: { // Give money, you can only give money in excess of loan
|
case 3: { // Give money, you can only give money in excess of loan
|
||||||
const Company *c = Company::GetIfValid(_local_company);
|
const Company *c = Company::GetIfValid(_local_company);
|
||||||
if (c == nullptr) break;
|
if (c == nullptr) break;
|
||||||
Money money = min(c->money - c->current_loan, (Money)(atoi(str) / _currency->rate));
|
Money money = min(c->money - c->current_loan, (Money)(strtoull(str, nullptr, 10) / _currency->rate));
|
||||||
|
|
||||||
uint32 money_c = Clamp(ClampToI32(money), 0, 20000000); // Clamp between 20 million and 0
|
uint32 money_c = Clamp(ClampToI32(money), 0, 20000000); // Clamp between 20 million and 0
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue