Skip to content

Commit fa70d19

Browse files
author
MarcoFalke
committed
util: Make util/error bilingual_str (refactor)
Translated strings should not end up in the debug log, stderr, or returned by an RPC. Changing the util methods in util/error to return a bilingual_str paves the way to achieve this goal in the long term.
1 parent 119e97a commit fa70d19

File tree

4 files changed

+20
-18
lines changed

4 files changed

+20
-18
lines changed

src/init.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1060,7 +1060,7 @@ bool AppInitParameterInteraction()
10601060
{
10611061
CAmount n = 0;
10621062
if (!ParseMoney(gArgs.GetArg("-incrementalrelayfee", ""), n))
1063-
return InitError(AmountErrMsg("incrementalrelayfee", gArgs.GetArg("-incrementalrelayfee", "")));
1063+
return InitError(AmountErrMsg("incrementalrelayfee", gArgs.GetArg("-incrementalrelayfee", "")).translated);
10641064
incrementalRelayFee = CFeeRate(n);
10651065
}
10661066

@@ -1104,7 +1104,7 @@ bool AppInitParameterInteraction()
11041104
if (gArgs.IsArgSet("-minrelaytxfee")) {
11051105
CAmount n = 0;
11061106
if (!ParseMoney(gArgs.GetArg("-minrelaytxfee", ""), n)) {
1107-
return InitError(AmountErrMsg("minrelaytxfee", gArgs.GetArg("-minrelaytxfee", "")));
1107+
return InitError(AmountErrMsg("minrelaytxfee", gArgs.GetArg("-minrelaytxfee", "")).translated);
11081108
}
11091109
// High fee check is done afterward in WalletParameterInteraction()
11101110
::minRelayTxFee = CFeeRate(n);
@@ -1120,7 +1120,7 @@ bool AppInitParameterInteraction()
11201120
{
11211121
CAmount n = 0;
11221122
if (!ParseMoney(gArgs.GetArg("-blockmintxfee", ""), n))
1123-
return InitError(AmountErrMsg("blockmintxfee", gArgs.GetArg("-blockmintxfee", "")));
1123+
return InitError(AmountErrMsg("blockmintxfee", gArgs.GetArg("-blockmintxfee", "")).translated);
11241124
}
11251125

11261126
// Feerate used to define dust. Shouldn't be changed lightly as old
@@ -1129,7 +1129,7 @@ bool AppInitParameterInteraction()
11291129
{
11301130
CAmount n = 0;
11311131
if (!ParseMoney(gArgs.GetArg("-dustrelayfee", ""), n))
1132-
return InitError(AmountErrMsg("dustrelayfee", gArgs.GetArg("-dustrelayfee", "")));
1132+
return InitError(AmountErrMsg("dustrelayfee", gArgs.GetArg("-dustrelayfee", "")).translated);
11331133
dustRelayFee = CFeeRate(n);
11341134
}
11351135

src/util/error.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,12 +41,12 @@ std::string ResolveErrMsg(const std::string& optname, const std::string& strBind
4141
return strprintf(_("Cannot resolve -%s address: '%s'").translated, optname, strBind);
4242
}
4343

44-
std::string AmountHighWarn(const std::string& optname)
44+
bilingual_str AmountHighWarn(const std::string& optname)
4545
{
46-
return strprintf(_("%s is set very high!").translated, optname);
46+
return strprintf(_("%s is set very high!"), optname);
4747
}
4848

49-
std::string AmountErrMsg(const std::string& optname, const std::string& strValue)
49+
bilingual_str AmountErrMsg(const std::string& optname, const std::string& strValue)
5050
{
51-
return strprintf(_("Invalid amount for -%s=<amount>: '%s'").translated, optname, strValue);
51+
return strprintf(_("Invalid amount for -%s=<amount>: '%s'"), optname, strValue);
5252
}

src/util/error.h

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@
1717

1818
#include <string>
1919

20+
struct bilingual_str;
21+
2022
enum class TransactionError {
2123
OK, //!< No error
2224
MISSING_INPUTS,
@@ -34,8 +36,8 @@ std::string TransactionErrorString(const TransactionError error);
3436

3537
std::string ResolveErrMsg(const std::string& optname, const std::string& strBind);
3638

37-
std::string AmountHighWarn(const std::string& optname);
39+
bilingual_str AmountHighWarn(const std::string& optname);
3840

39-
std::string AmountErrMsg(const std::string& optname, const std::string& strValue);
41+
bilingual_str AmountErrMsg(const std::string& optname, const std::string& strValue);
4042

4143
#endif // BITCOIN_UTIL_ERROR_H

src/wallet/wallet.cpp

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4407,11 +4407,11 @@ std::shared_ptr<CWallet> CWallet::CreateWalletFromFile(interfaces::Chain& chain,
44074407
if (gArgs.IsArgSet("-mintxfee")) {
44084408
CAmount n = 0;
44094409
if (!ParseMoney(gArgs.GetArg("-mintxfee", ""), n) || 0 == n) {
4410-
chain.initError(AmountErrMsg("mintxfee", gArgs.GetArg("-mintxfee", "")));
4410+
chain.initError(AmountErrMsg("mintxfee", gArgs.GetArg("-mintxfee", "")).translated);
44114411
return nullptr;
44124412
}
44134413
if (n > HIGH_TX_FEE_PER_KB) {
4414-
chain.initWarning(AmountHighWarn("-mintxfee") + " " +
4414+
chain.initWarning(AmountHighWarn("-mintxfee").translated + " " +
44154415
_("This is the minimum transaction fee you pay on every transaction.").translated);
44164416
}
44174417
walletInstance->m_min_fee = CFeeRate(n);
@@ -4425,7 +4425,7 @@ std::shared_ptr<CWallet> CWallet::CreateWalletFromFile(interfaces::Chain& chain,
44254425
return nullptr;
44264426
}
44274427
if (nFeePerK > HIGH_TX_FEE_PER_KB) {
4428-
chain.initWarning(AmountHighWarn("-fallbackfee") + " " +
4428+
chain.initWarning(AmountHighWarn("-fallbackfee").translated + " " +
44294429
_("This is the transaction fee you may pay when fee estimates are not available.").translated);
44304430
}
44314431
walletInstance->m_fallback_fee = CFeeRate(nFeePerK);
@@ -4438,19 +4438,19 @@ std::shared_ptr<CWallet> CWallet::CreateWalletFromFile(interfaces::Chain& chain,
44384438
return nullptr;
44394439
}
44404440
if (nFeePerK > HIGH_TX_FEE_PER_KB) {
4441-
chain.initWarning(AmountHighWarn("-discardfee") + " " +
4441+
chain.initWarning(AmountHighWarn("-discardfee").translated + " " +
44424442
_("This is the transaction fee you may discard if change is smaller than dust at this level").translated);
44434443
}
44444444
walletInstance->m_discard_rate = CFeeRate(nFeePerK);
44454445
}
44464446
if (gArgs.IsArgSet("-paytxfee")) {
44474447
CAmount nFeePerK = 0;
44484448
if (!ParseMoney(gArgs.GetArg("-paytxfee", ""), nFeePerK)) {
4449-
chain.initError(AmountErrMsg("paytxfee", gArgs.GetArg("-paytxfee", "")));
4449+
chain.initError(AmountErrMsg("paytxfee", gArgs.GetArg("-paytxfee", "")).translated);
44504450
return nullptr;
44514451
}
44524452
if (nFeePerK > HIGH_TX_FEE_PER_KB) {
4453-
chain.initWarning(AmountHighWarn("-paytxfee") + " " +
4453+
chain.initWarning(AmountHighWarn("-paytxfee").translated + " " +
44544454
_("This is the transaction fee you will pay if you send a transaction.").translated);
44554455
}
44564456
walletInstance->m_pay_tx_fee = CFeeRate(nFeePerK, 1000);
@@ -4465,7 +4465,7 @@ std::shared_ptr<CWallet> CWallet::CreateWalletFromFile(interfaces::Chain& chain,
44654465
{
44664466
CAmount nMaxFee = 0;
44674467
if (!ParseMoney(gArgs.GetArg("-maxtxfee", ""), nMaxFee)) {
4468-
chain.initError(AmountErrMsg("maxtxfee", gArgs.GetArg("-maxtxfee", "")));
4468+
chain.initError(AmountErrMsg("maxtxfee", gArgs.GetArg("-maxtxfee", "")).translated);
44694469
return nullptr;
44704470
}
44714471
if (nMaxFee > HIGH_MAX_TX_FEE) {
@@ -4480,7 +4480,7 @@ std::shared_ptr<CWallet> CWallet::CreateWalletFromFile(interfaces::Chain& chain,
44804480
}
44814481

44824482
if (chain.relayMinFee().GetFeePerK() > HIGH_TX_FEE_PER_KB)
4483-
chain.initWarning(AmountHighWarn("-minrelaytxfee") + " " +
4483+
chain.initWarning(AmountHighWarn("-minrelaytxfee").translated + " " +
44844484
_("The wallet will avoid paying less than the minimum relay fee.").translated);
44854485

44864486
walletInstance->m_confirm_target = gArgs.GetArg("-txconfirmtarget", DEFAULT_TX_CONFIRM_TARGET);

0 commit comments

Comments
 (0)