Page MenuHomePhabricator

Merge #12944: [wallet] ScanforWalletTransactions should mark input txns as dirty

Authored by nakihito on Dec 10 2019, 01:09.



3c292cc19 ScanforWalletTransactions should mark input txns as dirty (Gregory Sanders)

Pull request description:

I'm hitting a corner case in my mainnet wallet where I load a restore a wallet, call `rescanblockchain` from RPC, and it's "double counting" an output I've sent to myself since currently it never marks input transactions as dirty. This is fixed by a restart of the wallet.

Note that this only happens with keys with birthdate *after* the blocks containing the spent funds which gets scanned on startup, so it's hard to test without a set seed function.

Tree-SHA512: ee1fa152bb054b57ab4c734e355df10d241181e0372c81d583be61678fffbabe5ae60b09b05dc1bbbcfb4838df9d8538791d4c1d80a09b84d78ad2f50dcb0a61

Backport of Core PR12944

Test Plan
make check

Diff Detail

rABC Bitcoin ABC
Automatic diff as part of commit; lint not applicable.
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

Owners added a reviewer: Restricted Owners Package.Dec 10 2019, 01:09
jasonbcox requested changes to this revision.Dec 10 2019, 20:49

Do a round of self-review and you'll find a very important part is missing.

This revision now requires changes to proceed.Dec 10 2019, 20:49

Fixed AddToWalletIfInvolvingMe() call.

This revision is now accepted and ready to land.Dec 10 2019, 22:44