diff options
author | MarcoFalke <falke.marco@gmail.com> | 2021-06-26 10:02:31 +0200 |
---|---|---|
committer | MarcoFalke <falke.marco@gmail.com> | 2021-06-26 10:02:36 +0200 |
commit | 9c3751a0c940228c46461c4191f1a57153cb9037 (patch) | |
tree | ef54cda01e43c477b61418b9fb57c026edb5bb7b | |
parent | 3e306ee1d5c79eda64eb991fb2696bf530f0b30d (diff) | |
parent | 6cf4ea71878c0a83f2e49831e4dfa119c53761b7 (diff) | |
download | bitcoin-9c3751a0c940228c46461c4191f1a57153cb9037.tar.xz |
Merge bitcoin/bitcoin#22342: Avoid the use of P0083R3 std::set::merge
6cf4ea71878c0a83f2e49831e4dfa119c53761b7 Avoid the use of P0083R3 std::set::merge (Pieter Wuille)
Pull request description:
This use was introduced in #21365, but as pointed out in #22339, this causes compatibility problems.
Just avoid its use for now.
ACKs for top commit:
jonatack:
re-ACK 6cf4ea71878c0a83f2e49831e4dfa119c53761b7
benthecarman:
ACK 6cf4ea71878c0a83f2e49831e4dfa119c53761b7
hebasto:
ACK 6cf4ea71878c0a83f2e49831e4dfa119c53761b7, successfully compiled on the following systems:
Tree-SHA512: 2b3fdcadb7de98963ebb0b192bd956aa68526457fe5b374c74a69ea10d5b68902763148f11abbcc471010bcdc799e0804faef5f8e8ff8a509b3a053c0cb0ba39
-rw-r--r-- | src/script/standard.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/script/standard.cpp b/src/script/standard.cpp index 0fa5e56eb6..b8349bb9ab 100644 --- a/src/script/standard.cpp +++ b/src/script/standard.cpp @@ -407,7 +407,13 @@ void TaprootSpendData::Merge(TaprootSpendData other) merkle_root = other.merkle_root; } for (auto& [key, control_blocks] : other.scripts) { - scripts[key].merge(std::move(control_blocks)); + // Once P0083R3 is supported by all our targeted platforms, + // this loop body can be replaced with: + // scripts[key].merge(std::move(control_blocks)); + auto& target = scripts[key]; + for (auto& control_block: control_blocks) { + target.insert(std::move(control_block)); + } } } |