| 405 | } |
| 406 | |
| 407 | void SignatureData::MergeSignatureData(SignatureData sigdata) |
| 408 | { |
| 409 | if (complete) return; |
| 410 | if (sigdata.complete) { |
| 411 | *this = std::move(sigdata); |
| 412 | return; |
| 413 | } |
| 414 | if (redeem_script.empty() && !sigdata.redeem_script.empty()) { |
| 415 | redeem_script = sigdata.redeem_script; |
| 416 | } |
| 417 | if (witness_script.empty() && !sigdata.witness_script.empty()) { |
| 418 | witness_script = sigdata.witness_script; |
| 419 | } |
| 420 | signatures.insert(std::make_move_iterator(sigdata.signatures.begin()), std::make_move_iterator(sigdata.signatures.end())); |
| 421 | } |
| 422 | |
| 423 | bool SignSignature(const SigningProvider &provider, const CScript& fromPubKey, CMutableTransaction& txTo, unsigned int nIn, const CAmount& amount, int nHashType) |
| 424 | { |