Skip to content

Commit b7dbc83

Browse files
committed
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`.
1 parent c9ed992 commit b7dbc83

File tree

2 files changed

+2
-23
lines changed

2 files changed

+2
-23
lines changed

src/qt/bitcoin.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -587,7 +587,7 @@ int GuiMain(int argc, char* argv[])
587587
return EXIT_FAILURE;
588588
}
589589
#ifdef ENABLE_WALLET
590-
// Parse URIs on command line -- this can affect Params()
590+
// Parse URIs on command line
591591
PaymentServer::ipcParseCommandLine(argc, argv);
592592
#endif
593593

src/qt/paymentserver.cpp

Lines changed: 1 addition & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -78,32 +78,11 @@ void PaymentServer::ipcParseCommandLine(int argc, char* argv[])
7878
for (int i = 1; i < argc; i++)
7979
{
8080
QString arg(argv[i]);
81-
if (arg.startsWith("-"))
82-
continue;
81+
if (arg.startsWith("-")) continue;
8382

84-
// If the bitcoin: URI contains a payment request, we are not able to detect the
85-
// network as that would require fetching and parsing the payment request.
86-
// That means clicking such an URI which contains a testnet payment request
87-
// will start a mainnet instance and throw a "wrong network" error.
8883
if (arg.startsWith(BITCOIN_IPC_PREFIX, Qt::CaseInsensitive)) // bitcoin: URI
8984
{
90-
if (savedPaymentRequests.contains(arg)) continue;
9185
savedPaymentRequests.insert(arg);
92-
93-
SendCoinsRecipient r;
94-
if (GUIUtil::parseBitcoinURI(arg, &r) && !r.address.isEmpty())
95-
{
96-
auto tempChainParams = CreateChainParams(gArgs, CBaseChainParams::MAIN);
97-
98-
if (IsValidDestinationString(r.address.toStdString(), *tempChainParams)) {
99-
SelectParams(CBaseChainParams::MAIN);
100-
} else {
101-
tempChainParams = CreateChainParams(gArgs, CBaseChainParams::TESTNET);
102-
if (IsValidDestinationString(r.address.toStdString(), *tempChainParams)) {
103-
SelectParams(CBaseChainParams::TESTNET);
104-
}
105-
}
106-
}
10786
}
10887
}
10988
}

0 commit comments

Comments
 (0)