Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pass wallet reference in to actions and check for wallet liveness #1310

Merged
merged 3 commits into from Oct 17, 2018

Conversation

Projects
None yet
3 participants
@clemahieu
Copy link
Collaborator

commented Oct 17, 2018

Wallets were unsafely capturing this-pointers in wallet action lambdas and actions were not thread safe with respect to wallet_destroy actions.
This change puts a shared pointer to the wallet in to the call to queue a wallet action and checks liveness before calling the action.
This fixes an intermittent test failures with wallet_destroy and possible crashes while doing the same thing on a running node.

clemahieu added some commits Oct 17, 2018

Wallet actions aren't thread safe with wallets being destroyed. Check…
… that a wallet is live before executing an action on it.

@clemahieu clemahieu merged commit bdff89f into master Oct 17, 2018

4 checks passed

continuous-integration/appveyor/branch AppVeyor build succeeded
Details
continuous-integration/appveyor/pr AppVeyor build succeeded
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
continuous-integration/travis-ci/push The Travis CI build passed
Details

@rkeene rkeene added the bug label Oct 18, 2018

@rkeene rkeene added this to the V17.0 milestone Oct 18, 2018

@clemahieu clemahieu deleted the wallet_actions_by_id branch Oct 18, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.