• Robert Sprowson's avatar
    Fix for occasional NULL pointer read on timeout · 841353e9
    Robert Sprowson authored
    The ordering of interrupts would sometimes mean the xfer was finished with while the timeout function was waiting to run, leading to an attempt to pass an empty queue (xfer->pipe->queue) to USBDriver via USBDriver_TransferComplete. This would lead to a NULL pointer read when in usbdi.c when it looked at the queue contents.
    Adopt the fix from NetBSD xhci.c revision 1.96, so only do a timeout if the xfer wasn is progress.
    
    Version 0.29. Tagged as 'XHCIDriver-0_29'
    841353e9
xhci 95.6 KB