Skip to content

Commit

Permalink
Don't end isochronous transfers on short packets.
Browse files Browse the repository at this point in the history
  • Loading branch information
martinling committed Sep 19, 2024
1 parent 8eef2c2 commit d2308a6
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 61 deletions.
6 changes: 3 additions & 3 deletions src/decoder.rs
Original file line number Diff line number Diff line change
Expand Up @@ -406,7 +406,7 @@ impl EndpointData {
}
if complete {
self.last_success = success;
if success && short {
if success && short && ep_type != Normal(Isochronous) {
// New transfer, ended immediately by a short packet.
Single
} else {
Expand Down Expand Up @@ -435,7 +435,7 @@ impl EndpointData {
let success_changed = success != self.last_success;
self.last_success = success;
if success_changed {
if success && short {
if success && short && ep_type != Normal(Isochronous) {
// New transfer, ended immediately by a short packet.
Single
} else {
Expand All @@ -444,7 +444,7 @@ impl EndpointData {
}
} else if success {
// Continuing an ongoing transfer.
if short {
if short && ep_type != Normal(Isochronous) {
// A short packet ends the transfer.
Done
} else {
Expand Down
Loading

0 comments on commit d2308a6

Please sign in to comment.