dogecoin/src
Samuel Dobson 60091d20f9
Merge #9381: Remove CWalletTx merging logic from AddToWallet
28b112e9bd Get rid of BindWallet (Russell Yanofsky)
d002f9d15d Disable CWalletTx copy constructor (Russell Yanofsky)
65b9d8f8dd Avoid copying CWalletTx in LoadToWallet (Russell Yanofsky)
bd2fbc7cdb Get rid of unneeded CWalletTx::Init parameter (Russell Yanofsky)
2b9cba2065 Remove CWalletTx merging logic from AddToWallet (Russell Yanofsky)

Pull request description:

  This is a pure refactoring, no behavior is changing.

  Instead of AddToWallet taking a temporary CWalletTx object and then potentially merging it with a pre-existing CWalletTx, have it take a callback so callers can update the pre-existing CWalletTx directly.

  This makes AddToWallet simpler because now it is only has to be concerned with saving CWalletTx objects and not merging them.

  This makes AddToWallet calls clearer because they can now make direct updates to CWalletTx entries without having to make temporary objects and then worry about how they will be merged.

  Motivation for this change came from the bumpfee PR #8456 where we wanted to be able to call AddToWallet to make a simple update to an existing transaction, but were reluctant to, because the existing CWalletTx merging logic did not apply and seemed dangerous try to update as part of that PR. After this refactoring, the bumpfee PR could call AddToWallet safely instead of implementing a duplicate AddToWallet function.

  This also allows getting rid of the CWalletTx copy constructor to prevent unintentional copying.

ACKs for top commit:
  MarcoFalke:
    Anyway, re-ACK 28b112e9bd

Tree-SHA512: 528dd088714472a237500b200f4433db850bdb7fc29c5e5d81cae48072061dfb967f7c37edd90b33f24901239f9be982988547c1f8c80abc25fb243fbf7330ef
2020-05-06 11:36:32 +12:00
..
bench Remove CCoinsViewCache::GetValueIn(...) 2020-05-03 18:42:14 +00:00
compat
config
consensus scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
crc32c
crypto Avoid non-trivial global constants in SHA-NI code 2020-04-07 13:57:34 -07:00
index scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
interfaces wallet: Avoid translating RPC errors when creating txs 2020-05-01 07:39:06 -04:00
leveldb
logging Remove use of non-standard zero variadic macros 2020-04-30 18:02:04 +08:00
node Merge #18038: P2P: Mempool tracks locally submitted transactions to improve wallet privacy 2020-04-29 16:32:37 +08:00
policy
primitives Remove CCoinsViewCache::GetValueIn(...) 2020-05-03 18:42:14 +00:00
qt Merge #18699: wallet: Avoid translating RPC errors 2020-05-04 16:29:22 +02:00
rpc Merge #18809: rpc: Do not advertise dumptxoutset as a way to flush the chainstate 2020-04-30 07:20:14 -04:00
script Merge #18413: script: prevent UB when computing abs value for num opcode serialize 2020-05-02 21:24:05 +08:00
secp256k1
support Merge #18443: lockedpool: avoid sensitive data in core files (FreeBSD) 2020-05-04 16:31:07 +02:00
test Merge #18783: tests: Add fuzzing harness for MessageSign, MessageVerify and other functions in util/message.h 2020-05-04 09:02:21 -04:00
univalue
util wallet: Avoid translating RPC errors when loading wallets 2020-05-01 07:39:00 -04:00
wallet Merge #9381: Remove CWalletTx merging logic from AddToWallet 2020-05-06 11:36:32 +12:00
zmq scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
.clang-format
addrdb.cpp
addrdb.h
addrman.cpp scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
addrman.h logging: asmap logging and #include fixups 2020-03-04 14:24:19 +01:00
amount.h
arith_uint256.cpp
arith_uint256.h
attributes.h
banman.cpp
banman.h refactor: move DUMP_BANS_INTERVAL to banman.h 2020-03-10 09:52:53 -04:00
base58.cpp
base58.h
bech32.cpp
bech32.h
bitcoin-cli-res.rc
bitcoin-cli.cpp build: fix ASLR for bitcoin-cli on Windows 2020-04-19 10:05:29 +08:00
bitcoin-tx-res.rc
bitcoin-tx.cpp scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
bitcoin-wallet-res.rc
bitcoin-wallet.cpp scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
bitcoind-res.rc
bitcoind.cpp scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
blockencodings.cpp
blockencodings.h scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
blockfilter.cpp tests: Add fuzzing harness for Golomb-Rice coding (GolombRiceEncode/GolombRiceDecode) 2020-04-20 14:57:48 +00:00
blockfilter.h
bloom.cpp refactor: Remove unused methods CBloomFilter::reset()/clear() 2020-04-17 01:09:39 +02:00
bloom.h refactor: Remove unused methods CBloomFilter::reset()/clear() 2020-04-17 01:09:39 +02:00
chain.cpp
chain.h scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
chainparams.cpp scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
chainparams.h scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
chainparamsbase.cpp
chainparamsbase.h
chainparamsseeds.h net: Hardcoded seeds update for 0.20 2020-04-03 16:29:26 +02:00
checkqueue.h scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
clientversion.cpp
clientversion.h
coins.cpp Remove CCoinsViewCache::GetValueIn(...) 2020-05-03 18:42:14 +00:00
coins.h Remove CCoinsViewCache::GetValueIn(...) 2020-05-03 18:42:14 +00:00
compat.h
compressor.cpp
compressor.h scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
core_io.h
core_memusage.h
core_read.cpp scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
core_write.cpp
cuckoocache.h tests: Add fuzzing harness for classes/functions in cuckoocache.h 2020-04-08 14:45:27 +00:00
dbwrapper.cpp
dbwrapper.h
dummywallet.cpp wallet: Avoid translating RPC errors when loading wallets 2020-05-01 07:39:00 -04:00
flatfile.cpp
flatfile.h scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
fs.cpp
fs.h
hash.cpp
hash.h
httprpc.cpp scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
httprpc.h
httpserver.cpp scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
httpserver.h scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
indirectmap.h scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
init.cpp init: Remove boost from ThreadImport 2020-04-27 15:35:26 -04:00
init.h scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
key.cpp
key.h
key_io.cpp
key_io.h
limitedmap.h
logging.cpp log: Use Join() helper when listing log categories 2020-04-16 11:08:46 -04:00
logging.h log: Use Join() helper when listing log categories 2020-04-16 11:08:46 -04:00
Makefile.am Merge #18190: tests: Add fuzzing harness for Golomb-Rice coding (GolombRiceEncode/GolombRiceDecode) 2020-04-20 15:32:41 -04:00
Makefile.bench.include bench: add CAddrMan benchmarks 2020-04-21 15:06:59 +02:00
Makefile.crc32c.include
Makefile.leveldb.include
Makefile.qt.include Revert "Merge #16367: Multiprocess build support" 2020-04-10 19:38:21 -04:00
Makefile.qt_locale.include qt: Translations update pre-branch 2020-04-01 12:49:15 +02:00
Makefile.qttest.include
Makefile.test.include Merge #18783: tests: Add fuzzing harness for MessageSign, MessageVerify and other functions in util/message.h 2020-05-04 09:02:21 -04:00
Makefile.test_fuzz.include build: create test_fuzz library from src/test/fuzz/fuzz.cpp 2020-04-05 01:01:13 +02:00
Makefile.test_util.include fuzz: Add process_messages harness 2020-04-05 10:46:24 +08:00
memusage.h scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
merkleblock.cpp
merkleblock.h
miner.cpp scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
miner.h scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
net.cpp net: Add missing cs_vNodes lock 2020-03-29 11:45:46 -04:00
net.h [net processing] Move net processing consts to net_processing.cpp 2020-04-23 12:54:03 -04:00
net_permissions.cpp
net_permissions.h scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
net_processing.cpp Merge #18038: P2P: Mempool tracks locally submitted transactions to improve wallet privacy 2020-04-29 16:32:37 +08:00
net_processing.h Merge #18038: P2P: Mempool tracks locally submitted transactions to improve wallet privacy 2020-04-29 16:32:37 +08:00
net_types.h
netaddress.cpp scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
netaddress.h scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
netbase.cpp
netbase.h
netmessagemaker.h
noui.cpp
noui.h
optional.h
outputtype.cpp scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
outputtype.h
pow.cpp
pow.h
prevector.h prevector: Avoid unnamed struct, which is a GNU extension 2020-04-30 18:02:03 +08:00
protocol.cpp scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
protocol.h
psbt.cpp scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
psbt.h Merge #17509: gui: save and load PSBT 2020-04-23 13:16:23 +12:00
pubkey.cpp
pubkey.h Implement TopUp in DescriptorScriptPubKeyMan 2020-04-23 13:59:48 -04:00
random.cpp Merge #18038: P2P: Mempool tracks locally submitted transactions to improve wallet privacy 2020-04-29 16:32:37 +08:00
random.h Merge #18038: P2P: Mempool tracks locally submitted transactions to improve wallet privacy 2020-04-29 16:32:37 +08:00
randomenv.cpp scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
randomenv.h
rest.cpp Merge #18810: doc: update rest info on block size and json 2020-04-30 11:45:06 +02:00
reverse_iterator.h
scheduler.cpp scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
scheduler.h scheduler: Make schedule* methods type safe 2020-03-10 09:47:32 -04:00
serialize.h scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
shutdown.cpp
shutdown.h
span.h Merge #18591: Add C++17 build to Travis 2020-04-30 11:16:56 +02:00
streams.h
sync.cpp util: Remove unused itostr 2020-03-27 08:59:06 -04:00
sync.h refactor: Add interfaces::FoundBlock class to selectively return block data 2020-03-31 08:36:02 -05:00
threadinterrupt.cpp
threadinterrupt.h
threadsafety.h
timedata.cpp
timedata.h
tinyformat.h
torcontrol.cpp
torcontrol.h
txdb.cpp scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
txdb.h
txmempool.cpp Merge #18038: P2P: Mempool tracks locally submitted transactions to improve wallet privacy 2020-04-29 16:32:37 +08:00
txmempool.h [mempool] Track "unbroadcast" transactions 2020-04-23 14:42:25 -07:00
ui_interface.cpp
ui_interface.h
uint256.cpp
uint256.h
undo.h scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
validation.cpp Merge #18088: build: ensure we aren't using GNU extensions 2020-05-05 07:44:23 +08:00
validation.h Merge #18786: init: Remove boost from ThreadImport 2020-05-04 16:06:42 +02:00
validationinterface.cpp Do not clear validationinterface entries being executed 2020-04-07 12:53:40 -07:00
validationinterface.h refactor: drop boost::signals2 in validationinterface 2020-04-04 11:44:39 -04:00
version.h
versionbits.cpp
versionbits.h
versionbitsinfo.cpp
versionbitsinfo.h
walletinitinterface.h
warnings.cpp
warnings.h