aboutsummaryrefslogtreecommitdiff
path: root/src/rpc/output_script.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/rpc/output_script.cpp')
-rw-r--r--src/rpc/output_script.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/rpc/output_script.cpp b/src/rpc/output_script.cpp
index 4dd424fa14..f9343f48a8 100644
--- a/src/rpc/output_script.cpp
+++ b/src/rpc/output_script.cpp
@@ -280,6 +280,11 @@ static RPCHelpMan deriveaddresses()
for (const CScript& script : scripts) {
CTxDestination dest;
if (!ExtractDestination(script, dest)) {
+ // ExtractDestination no longer returns true for P2PK since it doesn't have a corresponding address
+ // However combo will output P2PK and should just ignore that script
+ if (scripts.size() > 1 && std::get_if<PubKeyDestination>(&dest)) {
+ continue;
+ }
throw JSONRPCError(RPC_INVALID_ADDRESS_OR_KEY, "Descriptor does not have a corresponding address");
}