diff --git a/src/add-ons/kernel/busses/usb/ehci.cpp b/src/add-ons/kernel/busses/usb/ehci.cpp index d8713479a2..d62dfe3614 100644 --- a/src/add-ons/kernel/busses/usb/ehci.cpp +++ b/src/add-ons/kernel/busses/usb/ehci.cpp @@ -1558,6 +1558,8 @@ EHCI::AddPendingTransfer(Transfer *transfer, ehci_qh *queueHead, delete data; return B_DEV_RESOURCE_CONFLICT; } + + it = it->link; } if (fLastTransfer) diff --git a/src/add-ons/kernel/busses/usb/ohci.cpp b/src/add-ons/kernel/busses/usb/ohci.cpp index 2490c5b534..a991be2147 100644 --- a/src/add-ons/kernel/busses/usb/ohci.cpp +++ b/src/add-ons/kernel/busses/usb/ohci.cpp @@ -1460,6 +1460,8 @@ OHCI::_SubmitTransfer(Transfer *transfer) _FreeDescriptorChain(firstDescriptor); return B_DEV_RESOURCE_CONFLICT; } + + it = it->link; } result = _AddPendingTransfer(transfer, endpoint, firstDescriptor, diff --git a/src/add-ons/kernel/busses/usb/uhci.cpp b/src/add-ons/kernel/busses/usb/uhci.cpp index 86c13cd6f2..f6a500b1f7 100644 --- a/src/add-ons/kernel/busses/usb/uhci.cpp +++ b/src/add-ons/kernel/busses/usb/uhci.cpp @@ -1076,6 +1076,8 @@ UHCI::AddPendingTransfer(Transfer *transfer, Queue *queue, delete data; return B_DEV_RESOURCE_CONFLICT; } + + it = it->link; } if (fLastTransfer)