dashpay / dash

Dash - Reinventing Cryptocurrency
https://www.dash.org
MIT License
1.49k stars 1.19k forks source link

fix: mixing for partially unlocked descriptor wallets #6092

Closed knst closed 32 minutes ago

knst commented 6 days ago

Issue being fixed or feature implemented

As noticed by kwvg, mixing doesn't work with descriptor wallets if do "unlock only for mixing". This PR is aiming to fix this issue. https://github.com/dashpay/dash-issues/issues/59

What was done?

Removed default argument "bool mixing = false" from WalletStorage interface, Refactored a logic of CWallet::IsLocked to make it shorter, clearer and unified with bitcoin.

How Has This Been Tested?

A. Run Dash-Qt with descriptor wallet, run mixing, enter passphrase. The wallet is partially unlocked (for mixing only) - possible to see yellow lock in status. Mixing happens. B. Open "send transaction dialog", try to send a transaction: the app asks password to unlock wallet as expected.

Though, I am not sure how exactly to test that all rpc are indeed locked when descriptor wallet is unlocked for mixing only.

Breaking Changes

N/A

Checklist:

knst commented 2 days ago

@kwvg you don't see transaction history for CJ because you have a filter "most common" activated: image

kwvg commented 1 day ago

you don't see transaction history for CJ because you have a filter "most common" activated

@knst Odd, it was a clean instance, hadn't activated any filter in any instances, current or prior. Thanks for pointing it out, have corrected post!