0
0
Fork 0
mirror of https://github.com/bitcoin/bitcoin.git synced 2025-03-08 14:34:53 -05:00
bitcoin-core/src
Andrew Chow ba47a4ba97
Merge bitcoin/bitcoin#26668: wallet: if only have one output type, don't perform "mixed" coin selection
89c1491d35 wallet: if only have one output type, don't perform "mixed" coin selection (furszy)

Pull request description:

  For wallets that only have one output type, we are currently performing the same
  selection process over the same coins twice.

  The "mixed coin selection" doesn't add any value to the result
  (there is nothing to mix if the available coins struct has only one type).

ACKs for top commit:
  achow101:
    ACK 89c1491d35
  john-moffett:
    ACK 89c1491d35
  kristapsk:
    cr utACK 89c1491d35

Tree-SHA512: 672eaeed3ba911d13fa61a46f719c8fe1ebe4d2dc7d723040e71937c693659411bc99cdbd9f0014e836b70eebeff1b8ca861f4d81d39e6f79f437364a526edbe
2022-12-14 16:16:03 -05:00
..
bench Merge bitcoin/bitcoin#26609: refactor: Move txmempool_entry.h --> kernel/mempool_entry.h 2022-12-06 19:04:31 +01:00
common refactor: Rename ambiguous interfaces::MakeHandler functions 2022-11-29 08:12:24 -04:00
compat moveonly: move IsSelectableSocket() from compat.h to sock.{h,cpp} 2022-07-20 16:26:19 +02:00
config
consensus refactor: use <cstdlib> over stdlib.h 2022-09-23 10:48:47 +01:00
crc32c Update crc32c subtree to latest upstream master 2022-08-13 13:55:38 +01:00
crypto Fix typo in comment SHA256->SHA512 2022-10-26 15:55:29 +03:00
index Merge bitcoin/bitcoin#19888: rpc, test: Improve getblockstats for unspendables 2022-12-05 17:46:54 -05:00
init Update -debug and -debugexclude help docs for severity level logging 2022-08-20 11:55:17 +02:00
interfaces refactor: Rename ambiguous interfaces::MakeHandler functions 2022-11-29 08:12:24 -04:00
ipc refactor: use <cstdlib> over stdlib.h 2022-09-23 10:48:47 +01:00
kernel refactor: Move txmempool_entry.h --> kernel/mempool_entry.h 2022-11-30 10:37:57 +00:00
leveldb Update leveldb-subtree subtree to latest upstream 2022-09-29 16:43:30 +01:00
logging
minisketch Update minisketch subtree to latest upstream 2022-10-23 15:03:04 +01:00
node Merge bitcoin/bitcoin#26298: refactor: Move src/interfaces/*.cpp files to libbitcoin_common.a 2022-12-07 14:54:23 +00:00
policy refactor: Move txmempool_entry.h --> kernel/mempool_entry.h 2022-11-30 10:37:57 +00:00
primitives wallet: Move fee underpayment check to after fee setting 2022-12-09 14:52:26 -05:00
qt Merge bitcoin-core/gui#682: Don't directly delete abandoned txes from GUI 2022-12-13 21:51:06 +00:00
rpc Merge bitcoin/bitcoin#23319: rpc: Return fee and prevout (utxos) to getrawtransaction 2022-12-13 18:09:09 -05:00
script sign: Fill in taproot pubkey info for all script path sigs 2022-10-28 20:03:22 -04:00
secp256k1 Update secp256k1 subtree to latest upstream master 2022-06-11 14:55:18 +01:00
support refactor: use <cstdlib> over stdlib.h 2022-09-23 10:48:47 +01:00
test Merge bitcoin/bitcoin#26628: RPC: Reject RPC requests with same named parameter specified multiple times 2022-12-13 17:57:23 +01:00
univalue univalue: Remove confusing getBool method 2022-12-09 10:03:26 -05:00
util util: Include full version id in bug reports 2022-12-06 11:14:47 +01:00
wallet Merge bitcoin/bitcoin#26668: wallet: if only have one output type, don't perform "mixed" coin selection 2022-12-14 16:16:03 -05:00
zmq zmq: remove LOCK(cs_main) from NotifyBlock 2022-12-06 15:07:04 -05:00
.bear-tidy-config tidy: enable modernize-use-nullptr 2022-04-26 10:43:33 +01:00
.clang-format
.clang-tidy Merge bitcoin/bitcoin#25872: Fix issues when calling std::move(const&) 2022-08-31 08:38:24 +01:00
addrdb.cpp Use steady clock for all millis bench logging 2022-07-30 10:23:58 +02:00
addrdb.h [net] Move asmap into NetGroupManager 2022-04-20 14:29:29 +01:00
addrman.cpp addrman: Use system time instead of adjusted network time 2022-07-30 11:04:09 +02:00
addrman.h addrman: Use system time instead of adjusted network time 2022-07-30 11:04:09 +02:00
addrman_impl.h addrman: Use system time instead of adjusted network time 2022-07-30 11:04:09 +02:00
arith_uint256.cpp Merge bitcoin/bitcoin#24077: util: Make base_uint::GetHex() and base_uint::SetHex() not depend on uint256 2022-04-14 07:15:22 +02:00
arith_uint256.h Remove duplicate static_asserts 2022-04-14 19:26:22 +02:00
attributes.h
banman.cpp Use steady clock for all millis bench logging 2022-07-30 10:23:58 +02:00
banman.h refactor: Add thread safety annotation to BanMan::SweepBanned() 2022-05-20 15:17:00 +02:00
base58.cpp scripted-diff: Rename ValidAsCString to ContainsNoNUL 2022-04-27 14:16:35 +02:00
base58.h refactor: Remove defunct attributes.h includes 2022-05-21 13:54:33 -05:00
bech32.cpp refactor: Make 64-bit shift explicit 2022-10-04 21:49:07 +01:00
bech32.h
bitcoin-chainstate.cpp scripted-diff: rename CChainState -> Chainstate 2022-09-09 11:47:27 -04:00
bitcoin-cli-res.rc
bitcoin-cli.cpp src/bitcoin-cli.cpp: -getinfo help - grammar correction 2022-11-15 09:41:23 -05:00
bitcoin-tx-res.rc
bitcoin-tx.cpp refactor: use <cstdio> over stdio.h 2022-09-21 16:53:11 +01:00
bitcoin-util-res.rc
bitcoin-util.cpp refactor: move compat.h into compat/ 2022-07-20 10:34:46 +01:00
bitcoin-wallet-res.rc
bitcoin-wallet.cpp refactor: move url.h/cpp from lib util to lib common 2022-10-31 10:17:04 +00:00
bitcoind-res.rc
bitcoind.cpp refactor: move url.h/cpp from lib util to lib common 2022-10-31 10:17:04 +00:00
blockencodings.cpp Remove fUseWTXID parameter from CBlockHeaderAndShortTxIDs constructor 2022-05-17 10:37:10 +01:00
blockencodings.h Remove fUseWTXID parameter from CBlockHeaderAndShortTxIDs constructor 2022-05-17 10:37:10 +01:00
blockfilter.cpp Use new Join() helper for ListBlockFilterTypes() 2022-08-24 10:15:32 +02:00
blockfilter.h refactor: add LIFETIMEBOUND to blockfilter where needed 2022-08-31 16:51:32 +01:00
chain.cpp CBlockLocator: performance-move-const-arg Clang tidy fixups 2022-08-31 15:10:26 +02:00
chain.h Add functions to construct locators without CChain 2022-08-23 16:05:00 -04:00
chainparams.cpp Update chainparams for 24.0 release 2022-08-31 15:31:34 +03:00
chainparams.h
chainparamsbase.cpp
chainparamsbase.h
chainparamsseeds.h Merge bitcoin/bitcoin#25853: net: update testnet torv3 hardcoded seeds for 24.x 2022-09-09 10:07:39 +02:00
checkqueue.h Remove g_parallel_script_checks 2022-10-18 14:12:42 +02:00
clientversion.cpp
clientversion.h
coins.cpp Merge bitcoin/bitcoin#25707: refactor: Make const references to avoid unnecessarily copying objects and enable two clang-tidy checks 2022-08-19 17:11:06 +02:00
coins.h refactor: remove unused methods {CDBIterator,CCoinsViewDBCursor}::GetValueSize() 2022-06-21 16:19:10 +02:00
compressor.cpp
compressor.h
core_io.h refactor: Remove defunct attributes.h includes 2022-05-21 13:54:33 -05:00
core_memusage.h
core_read.cpp refactor: Make const refs vars where applicable 2022-07-27 13:27:57 +02:00
core_write.cpp refactor: add stdd:: includes to core_write 2022-03-30 20:11:15 +01:00
cuckoocache.h validationcaches: Use size_t for sizes 2022-08-03 12:03:28 -04:00
dbwrapper.cpp db: add StoragePath to CDBWrapper/CCoinsViewDB 2022-09-13 12:38:06 -04:00
dbwrapper.h db: add StoragePath to CDBWrapper/CCoinsViewDB 2022-09-13 12:38:06 -04:00
deploymentinfo.cpp
deploymentinfo.h
deploymentstatus.cpp validation: move g_versionbitscache into ChainstateManager 2022-05-10 12:09:33 +10:00
deploymentstatus.h validation: move g_versionbitscache into ChainstateManager 2022-05-10 12:09:33 +10:00
dummywallet.cpp
external_signer.cpp Merge bitcoin/bitcoin#23578: Add external signer taproot support 2022-10-26 11:10:23 +08:00
external_signer.h
flatfile.cpp Disallow more unsafe string->path conversions allowed by path append operators 2022-04-21 12:01:00 -05:00
flatfile.h
fs.cpp fs: fully initialize _OVERLAPPED for win32 2022-09-14 11:55:10 +01:00
fs.h fs: work around u8path deprecated-declaration warnings with libc++ 2022-08-19 08:58:56 +01:00
hash.cpp Fix link to MurmurHash3.cpp from Austin Appleby 2022-08-30 13:52:45 +02:00
hash.h Use HashWriter where possible 2022-07-20 15:34:36 +02:00
headerssync.cpp Move headerssync logging to BCLog::NET 2022-08-30 12:09:04 -04:00
headerssync.h Track headers presync progress and log it 2022-08-29 08:10:35 -04:00
httprpc.cpp scripted-diff: Use getInt<T> over get_int/get_int64 2022-05-18 19:15:03 +02:00
httprpc.h
httpserver.cpp refactor: Refactored RequestMethodString function to follow developer notes 2022-12-09 16:14:27 +00:00
httpserver.h Merge bitcoin/bitcoin#24681: build: Bump libevent minimum version up to 2.1.8 2022-04-06 13:19:36 +01:00
i2p.cpp util: move threadinterrupt into util 2022-11-01 10:14:49 +00:00
i2p.h util: move threadinterrupt into util 2022-11-01 10:14:49 +00:00
indirectmap.h
init.cpp Fixup clang-tidy named argument comments 2022-12-05 15:51:46 +00:00
init.h Move init::SanityCheck to kernel::SanityCheck 2022-06-02 11:42:12 -04:00
key.cpp extended keys: fail to derive too large depth instead of wrapping around 2022-08-04 11:32:26 +02:00
key.h (pubk)key: mark Derive() as nodiscard 2022-08-04 11:32:25 +02:00
key_io.cpp
key_io.h
logging.cpp wallet: fast rescan: show log message for every non-skipped block 2022-10-25 15:57:38 +02:00
logging.h wallet: fast rescan: show log message for every non-skipped block 2022-10-25 15:57:38 +02:00
Makefile.am Merge bitcoin/bitcoin#26298: refactor: Move src/interfaces/*.cpp files to libbitcoin_common.a 2022-12-07 14:54:23 +00:00
Makefile.bench.include Merge bitcoin/bitcoin#16981: Improve runtime performance of --reindex 2022-11-15 19:23:39 -05:00
Makefile.crc32c.include build: Create .la library for crc32c 2022-04-26 16:25:38 -04:00
Makefile.leveldb.include Use more specific path when including memenv.h header 2022-06-23 15:33:01 +02:00
Makefile.minisketch.include
Makefile.qt.include build: extract $(BOOST_CPPFLAGS) from $(BITCOIN_INCLUDES) 2022-09-13 17:15:17 +01:00
Makefile.qt_locale.include
Makefile.qttest.include build: extract $(BOOST_CPPFLAGS) from $(BITCOIN_INCLUDES) 2022-09-13 17:15:17 +01:00
Makefile.test.include refactor: unify test/util/wallet.h with wallet/test/util.h 2022-11-21 17:30:00 -03:00
Makefile.test_fuzz.include [fuzz] Move ConsumeNetAddr to fuzz/util/net.h 2022-11-17 14:52:45 +00:00
Makefile.test_util.include refactor: unify test/util/wallet.h with wallet/test/util.h 2022-11-21 17:30:00 -03:00
Makefile.univalue.include
mapport.cpp util: move threadinterrupt into util 2022-11-01 10:14:49 +00:00
mapport.h
memusage.h refactor: use <cstdlib> over stdlib.h 2022-09-23 10:48:47 +01:00
merkleblock.cpp
merkleblock.h
net.cpp util: move threadinterrupt into util 2022-11-01 10:14:49 +00:00
net.h Merge bitcoin/bitcoin#26292: util: move threadinterrupt into util/ 2022-11-22 09:52:53 +00:00
net_permissions.cpp
net_permissions.h doc: clarify that NetPermissionFlags::Implicit is only about whitelists 2022-11-07 15:20:20 +01:00
net_processing.cpp Merge bitcoin/bitcoin#26199: p2p: Don't self-advertise during version processing 2022-12-12 10:12:09 +01:00
net_processing.h net: add NetEventsInterface::g_msgproc_mutex 2022-09-15 14:44:38 +10:00
net_types.cpp scripted-diff: Use getInt<T> over get_int/get_int64 2022-05-18 19:15:03 +02:00
net_types.h
netaddress.cpp [netaddress] Make OnionToString public 2022-11-17 14:52:45 +00:00
netaddress.h [netaddress] Make OnionToString public 2022-11-17 14:52:45 +00:00
netbase.cpp Merge bitcoin/bitcoin#25421: net: convert standalone IsSelectableSocket() and SetSocketNonBlocking() to Sock methods 2022-10-12 15:49:02 -04:00
netbase.h moveonly: move SetSocketNonBlocking() from netbase to util/sock 2022-07-20 16:26:24 +02:00
netgroup.cpp [netgroup] Use nStartByte as offset for the last byte of the group 2022-04-25 15:09:14 +02:00
netgroup.h [netgroupman] Remove NetGroupManager::GetAsmap() 2022-04-20 14:35:53 +01:00
netmessagemaker.h
noui.cpp scripted-diff: Avoid incompatibility with CMake AUTOUIC feature 2022-06-14 10:38:51 +02:00
noui.h
outputtype.cpp Merge bitcoin/bitcoin#25734: wallet, refactor: #24584 follow-ups 2022-08-16 20:00:19 -04:00
outputtype.h wallet: remove UNKNOWN type from OUTPUT_TYPES array 2022-08-18 16:47:15 -03:00
pow.cpp Add function to validate difficulty changes 2022-08-23 11:34:10 -04:00
pow.h Add function to validate difficulty changes 2022-08-23 11:34:10 -04:00
prevector.h refactor: use <cstdlib> over stdlib.h 2022-09-23 10:48:47 +01:00
protocol.cpp p2p: Announce reconciliation support 2022-10-17 12:35:43 +03:00
protocol.h p2p: Drop roles from sendtxrcncl 2022-11-10 09:21:57 +02:00
psbt.cpp Verify PSBT inputs rather than check for fields being empty 2022-10-17 11:13:02 -04:00
psbt.h Fixup clang-tidy named argument comments 2022-12-05 15:51:46 +00:00
pubkey.cpp Merge bitcoin/bitcoin#25642: Don't wrap around when deriving an extended key at a too large depth 2022-08-10 14:25:43 -04:00
pubkey.h (pubk)key: mark Derive() as nodiscard 2022-08-04 11:32:25 +02:00
random.cpp refactor: use <cstdlib> over stdlib.h 2022-09-23 10:48:47 +01:00
random.h refactor: Make FEELER_SLEEP_WINDOW type safe (std::chrono) 2022-07-13 15:21:12 +02:00
randomenv.cpp refactor: move compat.h into compat/ 2022-07-20 10:34:46 +01:00
randomenv.h
rest.cpp rest: reduce LOCK(cs_main) scope in rest_block 2022-12-06 15:07:04 -05:00
rest.h
reverse_iterator.h
scheduler.cpp refactor: use C++11 default initializers 2022-05-17 17:18:58 +01:00
scheduler.h Increase threadsafety annotation coverage 2022-05-12 02:25:55 +10:00
serialize.h Add ChronoFormatter to serialize 2022-07-26 11:05:04 +02:00
shutdown.cpp scripted-diff: Avoid incompatibility with CMake AUTOUIC feature 2022-06-14 10:38:51 +02:00
shutdown.h
signet.cpp
signet.h
span.h scripted-diff: rename BytePtr to AsBytePtr 2022-04-26 09:41:45 +01:00
streams.h util: add CBufferedFile::SkipTo() to move ahead in the stream 2022-10-24 13:02:37 -06:00
sync.cpp
sync.h Merge bitcoin/bitcoin#25676: sync: simplify and remove unused code from sync.h 2022-10-11 09:18:55 +08:00
threadsafety.h
timedata.cpp Make adjusted time type safe 2022-08-05 14:59:15 +02:00
timedata.h Make adjusted time type safe 2022-08-05 14:59:15 +02:00
tinyformat.h
torcontrol.cpp refactor: move compat.h into compat/ 2022-07-20 10:34:46 +01:00
torcontrol.h
txdb.cpp CDiskBlockIndex: rename GetBlockHash() to ConstructBlockHash() 2022-07-22 12:45:07 +02:00
txdb.h db: add StoragePath to CDBWrapper/CCoinsViewDB 2022-09-13 12:38:06 -04:00
txmempool.cpp Merge bitcoin/bitcoin#17786: refactor: Nuke policy/fees->mempool circular dependencies 2022-11-18 17:04:49 -08:00
txmempool.h refactor: Move txmempool_entry.h --> kernel/mempool_entry.h 2022-11-30 10:37:57 +00:00
txorphanage.cpp scripted-diff: rename and de-globalise g_cs_orphans 2022-10-11 23:35:37 +10:00
txorphanage.h scripted-diff: rename and de-globalise g_cs_orphans 2022-10-11 23:35:37 +10:00
txrequest.cpp
txrequest.h
uint256.cpp
uint256.h Use ReadLE64 in uint256::GetUint64() instead of duplicating logic 2022-09-15 16:48:50 -04:00
undo.h
validation.cpp Merge bitcoin/bitcoin#26477: validation: fix broken maxtipage comparison 2022-12-13 10:07:37 +00:00
validation.h Merge bitcoin/bitcoin#26513: Make static nLastFlush and nLastWrite Chainstate members 2022-12-08 15:35:28 +00:00
validationinterface.cpp log: mempool: log removal reason in validation interface 2022-11-04 09:38:39 -04:00
validationinterface.h scripted-diff: Rename MainSignalsInstance() class to MainSignalsImpl() 2022-05-09 18:35:44 +02:00
version.h
versionbits.cpp Sanity assert GetAncestor() != nullptr where appropriate 2022-05-05 15:55:44 +02:00
versionbits.h Increase threadsafety annotation coverage 2022-05-12 02:25:55 +10:00
walletinitinterface.h
warnings.cpp scripted-diff: Convert global Mutexes to GlobalMutexes 2022-05-21 01:23:23 +10:00
warnings.h