-
Notifications
You must be signed in to change notification settings - Fork 760
Fix: Harden the transfer flow for unexpected data #1581
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: Harden the transfer flow for unexpected data #1581
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR improves the robustness of the transfer flow by handling edge cases where context_uri is empty and the context has no tracks. It addresses user-reported issues where transfers would fail under these conditions.
- Added fallback handling for empty track contexts during transfers
- Enhanced error handling for context retrieval failures
- Updated the initial transfer handler to accept and use the context URI
Reviewed Changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| connect/src/state/transfer.rs | Updated initial transfer handler to accept context URI parameter and set player context fields |
| connect/src/spirc.rs | Added fallback logic for empty track contexts and improved error handling for context retrieval |
| CHANGELOG.md | Documented the bug fix and reorganized existing entries |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
roderickvd
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also minor questions. Sorry for the long wait for the review!
roderickvd
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Fixes the transfer flow handling when the
context_uriis empty and the context has no tracks. I'm still not sure how this can happen, but some users seem to have encountered it so this should improve the handling for these specific cases.Additionally the grayed out play/pause button when transferring was fixed and should now stay enabled during transfering.
Fixes #1566