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

Fix race condition that results in inconsistent settings UI #8113

Merged
merged 1 commit into from
Mar 3, 2021

Conversation

emerick
Copy link
Contributor

@emerick emerick commented Mar 3, 2021

Resolves brave/brave-browser#13801

Submitter Checklist:

  • I confirm that no security/privacy review is needed, or that I have requested one
  • There is a ticket for my issue
  • Used Github auto-closing keywords in the PR description above
  • Wrote a good PR/commit description
  • Added appropriate labels (QA/Yes or QA/No; release-notes/include or release-notes/exclude; OS/...) to the associated issue
  • Checked the PR locally: npm run test -- brave_browser_tests, npm run test -- brave_unit_tests, npm run lint, npm run gn_check, npm run tslint
  • Ran git rebase master (if needed)

Reviewer Checklist:

  • A security review is not needed, or a link to one is included in the PR description
  • New files have MPL-2.0 license header
  • Adequate test coverage exists to prevent regressions
  • Major classes, functions and non-trivial code blocks are well-commented
  • Changes in component dependencies are properly reflected in gn
  • Code follows the style guide
  • Test plan is specified in PR before merging

After-merge Checklist:

Test Plan:

  • Clean profile
  • Launch browser
  • Visit brave://rewards
  • Verify that brave://rewards settings page shows "Verify Wallet" button (not "Your Wallet" text)
  • Verify that Rewards panel shows "Verify Wallet" button (not "Your Wallet" text)

Try these steps multiple times, as this was a race condition. In my testing the issue was very prevalent, happening maybe 7-8 out of 10 times.

@emerick emerick requested a review from zenparsing March 3, 2021 12:40
@emerick emerick self-assigned this Mar 3, 2021
@emerick emerick force-pushed the rewards-race-condition-your-wallet branch from c297028 to 924cc01 Compare March 3, 2021 14:25
@emerick emerick requested a review from zenparsing March 3, 2021 14:25

web_ui()->CallJavascriptFunctionUnsafe(
"brave_rewards.initialized",
base::Value(0));
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I know the existing call to "initialized" provides a zero (I guess to mimic a LEDGER_OK value), so, although the value isn't used, I think it's fine if we want to be consistent.

@emerick
Copy link
Contributor Author

emerick commented Mar 3, 2021

CI passed on all platforms except Mac, Mac had one test failure expected at the moment (farbling).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Fix race condition in Brave Rewards panel that results in inconsistent UI ("Your wallet" vs verify wallet)
2 participants