Read the previous descriptor pointer before freeing transfer and transfer descriptors.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42701 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -1758,6 +1758,8 @@ EHCI::FinishIsochronousTransfers()
|
|||||||
|
|
||||||
transfer->transfer->Finished(B_OK, actualLength);
|
transfer->transfer->Finished(B_OK, actualLength);
|
||||||
|
|
||||||
|
itd = itd->prev;
|
||||||
|
|
||||||
for (uint32 i = 0; i <= transfer->last_to_process; i++)
|
for (uint32 i = 0; i <= transfer->last_to_process; i++)
|
||||||
FreeDescriptor(transfer->descriptors[i]);
|
FreeDescriptor(transfer->descriptors[i]);
|
||||||
|
|
||||||
@@ -1771,8 +1773,8 @@ EHCI::FinishIsochronousTransfers()
|
|||||||
transferDone = true;
|
transferDone = true;
|
||||||
} else {
|
} else {
|
||||||
TRACE("FinishIsochronousTransfers not end of transfer\n");
|
TRACE("FinishIsochronousTransfers not end of transfer\n");
|
||||||
|
itd = itd->prev;
|
||||||
}
|
}
|
||||||
itd = itd->prev;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
UnlockIsochronous();
|
UnlockIsochronous();
|
||||||
|
|||||||
Reference in New Issue
Block a user