Skip to content

Conversation

@johnmatter
Copy link

before

  1. compare_exchange switches state from Processing to Activated
  2. Drop calls stop_processing, which contains the following assertion which will fail:
assert_plugin_state_eq!(self, PluginStatus::Processing);

after

IIUC this now has the intended behavior, which is:

  • If Processing, then call stop_processing (which transitions to Activated)
  • If Activated, do nothing
  • Otherwise, panic

…aused by compare_exchange changing state before stop_processing() call
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant