Author: fireball Date: Mon May 4 13:32:02 2009 New Revision: 40781
URL: http://svn.reactos.org/svn/reactos?rev=40781&view=rev Log: - Handle failure case correctly in *_submit_urb: remove URB from an endpoint's linked list, instead of corrupting this URB's memory. Thanks to Gregor Schneider for spotting the suspicious place. See issue #4279 for more details.
Modified: trunk/reactos/drivers/usb/nt4compat/usbdriver/ehci.c trunk/reactos/drivers/usb/nt4compat/usbdriver/uhci.c
Modified: trunk/reactos/drivers/usb/nt4compat/usbdriver/ehci.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/usb/nt4compat/usbdr... ============================================================================== --- trunk/reactos/drivers/usb/nt4compat/usbdriver/ehci.c [iso-8859-1] (original) +++ trunk/reactos/drivers/usb/nt4compat/usbdriver/ehci.c [iso-8859-1] Mon May 4 13:32:02 2009 @@ -798,7 +798,7 @@
LBL_OUT2: pdev->ref_count--; - RemoveEntryList((PLIST_ENTRY) purb); + RemoveEntryList(&purb->urb_link);
LBL_OUT: unlock_dev(pdev, TRUE);
Modified: trunk/reactos/drivers/usb/nt4compat/usbdriver/uhci.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/usb/nt4compat/usbdr... ============================================================================== --- trunk/reactos/drivers/usb/nt4compat/usbdriver/uhci.c [iso-8859-1] (original) +++ trunk/reactos/drivers/usb/nt4compat/usbdriver/uhci.c [iso-8859-1] Mon May 4 13:32:02 2009 @@ -1436,7 +1436,7 @@
LBL_OUT2: pdev->ref_count--; - RemoveEntryList((PLIST_ENTRY) purb); + RemoveEntryList(&purb->urb_link);
LBL_OUT: unlock_dev(pdev, TRUE);