| 519 | } |
| 520 | |
| 521 | void SignatureData::MergeSignatureData(SignatureData sigdata) |
| 522 | { |
| 523 | if (complete) return; |
| 524 | if (sigdata.complete) { |
| 525 | *this = std::move(sigdata); |
| 526 | return; |
| 527 | } |
| 528 | if (redeem_script.empty() && !sigdata.redeem_script.empty()) { |
| 529 | redeem_script = sigdata.redeem_script; |
| 530 | } |
| 531 | if (witness_script.empty() && !sigdata.witness_script.empty()) { |
| 532 | witness_script = sigdata.witness_script; |
| 533 | } |
| 534 | signatures.insert(std::make_move_iterator(sigdata.signatures.begin()), std::make_move_iterator(sigdata.signatures.end())); |
| 535 | } |
| 536 | |
| 537 | bool SignSignature(const SigningProvider &provider, const CScript& fromPubKey, CMutableTransaction& txTo, unsigned int nIn, const CConfidentialValue& amount, int nHashType) |
| 538 | { |