diff --git a/src/external_signer.cpp b/src/external_signer.cpp index 3790f4d36f9..2da9502669a 100644 --- a/src/external_signer.cpp +++ b/src/external_signer.cpp @@ -112,14 +112,13 @@ bool ExternalSigner::SignTransaction(PartiallySignedTransaction& psbtx, std::str return false; } - PartiallySignedTransaction signer_psbtx; - std::string signer_psbt_error; - if (!DecodeBase64PSBT(signer_psbtx, signer_result.find_value("psbt").get_str(), signer_psbt_error)) { - error = strprintf("TX decode failed %s", signer_psbt_error); + util::Result signer_psbtx = DecodeBase64PSBT(signer_result.find_value("psbt").get_str()); + if (!signer_psbtx) { + error = strprintf("TX decode failed %s", util::ErrorString(signer_psbtx).original); return false; } - psbtx = signer_psbtx; + psbtx = *signer_psbtx; return true; } diff --git a/src/psbt.cpp b/src/psbt.cpp index 29f16e73c87..1a49d01afcf 100644 --- a/src/psbt.cpp +++ b/src/psbt.cpp @@ -9,6 +9,7 @@ #include #include