qt: Fix sign message address book filtering#945
Open
Bushstar wants to merge 1 commit into
Open
Conversation
Contributor
|
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers. ReviewsSee the guideline and AI policy for information on the review process. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Two bugs here found when signing some pretty ancient addresses! Fixed in one PR as they share the same root cause and code path.
This PR fixes sign message address selection so it only shows signable legacy addresses and no longer mutates the wallet’s shared address book model.
The problem was that the sign message picker used
WalletModel::refresh(bool pk_hash_only)as a filter, it was was too loose a filter and it replaced the wallet's shared address book model leaving other views stale.The fix is one change, stop mutating the shared wallet model and give the signing picker its own local filter.
This is related it seems and could be closed: #62
Reproduce address picker showing invalid addresses
createwallet "watchonly" true trueimportdescriptors '[{"desc":"addr(mipcBbFg9gMiCh81Kj8tqqdgoZub1ZJRfn)#eccnnjdy","timestamp":"now","label":"keyless legacy"}]'Reproduce Receiving Addresses window stops updating
createwallet "non-updating"getnewaddress "after picker" bech32