Skip to content

Prevent concurrent torrent picker flows - #558

Merged
Linuxuser67 merged 1 commit into
mainfrom
fix/torrent-picker-single-flight-20261029
Oct 29, 2026
Merged

Linuxuser67 merged 1 commit into
mainfrom
fix/torrent-picker-single-flight-20261029

Conversation

@Linuxuser67

Copy link
Copy Markdown
Owner

Summary

  • Guard the torrent picker flow from the initial click through file selection and parsing.
  • Use a drop guard so dismissal, read/parse errors, multi-file picker creation, cancellation, or normal completion all release the single-flight slot.
  • Add a GTK-free regression test for overlapping-flow suppression and guard release.

Review

Independently checked the reported race against wire_torrent_picker: parsing now runs asynchronously while the button remains available, and the single-file enqueue could otherwise be scheduled more than once. The guard is acquired synchronously in the click callback, before the file dialog future is spawned, and is owned by that future.

@Linuxuser67
Linuxuser67 merged commit 824e2e2 into main Oct 29, 2026
5 checks passed
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