Fix payment field values formatting.

Regression was introduced in e6b9a07163.

Fixes #27318.
This commit is contained in:
John Preston 2024-01-08 17:34:08 +04:00
parent 30d5b7fd66
commit 893e14cc39

View file

@ -217,10 +217,10 @@ struct SimpleFieldState {
const FieldConfig &config,
const QString &parsed,
const QString &countryIso2) {
static const auto RegExp = QRegularExpression("[^0-9]\\.");
if (config.type == FieldType::Country) {
return countryIso2;
} else if (config.type == FieldType::Money) {
static const auto RegExp = QRegularExpression("[^0-9\\.]");
const auto rule = LookupCurrencyRule(config.currency);
const auto real = QString(parsed).replace(
QChar(rule.decimal),
@ -236,6 +236,7 @@ struct SimpleFieldState {
int64(base::SafeRound(real * std::pow(10., rule.exponent))));
} else if (config.type == FieldType::CardNumber
|| config.type == FieldType::CardCVC) {
static const auto RegExp = QRegularExpression("[^0-9]");
return QString(parsed).replace(RegExp, QString());
}
return parsed;