mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-01-10 20:03:34 -03:00
qt: Remove network detection based on address in BIP21
This is some very ugly and brittle code that switches the global network based on a provided address, remove it. I think in practice it's very unlikely for testnet BIP21 payment URIs to be used, and if so it's for testing so it's easy enough to manually copy it. Or to specify `-testnet` explicitly. There is already no case for `-regtest` or `-signet`.
This commit is contained in:
parent
c9ed9927bb
commit
b7dbc83f23
2 changed files with 2 additions and 23 deletions
|
@ -587,7 +587,7 @@ int GuiMain(int argc, char* argv[])
|
|||
return EXIT_FAILURE;
|
||||
}
|
||||
#ifdef ENABLE_WALLET
|
||||
// Parse URIs on command line -- this can affect Params()
|
||||
// Parse URIs on command line
|
||||
PaymentServer::ipcParseCommandLine(argc, argv);
|
||||
#endif
|
||||
|
||||
|
|
|
@ -78,32 +78,11 @@ void PaymentServer::ipcParseCommandLine(int argc, char* argv[])
|
|||
for (int i = 1; i < argc; i++)
|
||||
{
|
||||
QString arg(argv[i]);
|
||||
if (arg.startsWith("-"))
|
||||
continue;
|
||||
if (arg.startsWith("-")) continue;
|
||||
|
||||
// If the bitcoin: URI contains a payment request, we are not able to detect the
|
||||
// network as that would require fetching and parsing the payment request.
|
||||
// That means clicking such an URI which contains a testnet payment request
|
||||
// will start a mainnet instance and throw a "wrong network" error.
|
||||
if (arg.startsWith(BITCOIN_IPC_PREFIX, Qt::CaseInsensitive)) // bitcoin: URI
|
||||
{
|
||||
if (savedPaymentRequests.contains(arg)) continue;
|
||||
savedPaymentRequests.insert(arg);
|
||||
|
||||
SendCoinsRecipient r;
|
||||
if (GUIUtil::parseBitcoinURI(arg, &r) && !r.address.isEmpty())
|
||||
{
|
||||
auto tempChainParams = CreateChainParams(gArgs, CBaseChainParams::MAIN);
|
||||
|
||||
if (IsValidDestinationString(r.address.toStdString(), *tempChainParams)) {
|
||||
SelectParams(CBaseChainParams::MAIN);
|
||||
} else {
|
||||
tempChainParams = CreateChainParams(gArgs, CBaseChainParams::TESTNET);
|
||||
if (IsValidDestinationString(r.address.toStdString(), *tempChainParams)) {
|
||||
SelectParams(CBaseChainParams::TESTNET);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue