diff options
author | Chris Dickens <christopher.a.dickens@gmail.com> | 2018-03-12 10:24:04 -0700 |
---|---|---|
committer | Chris Dickens <christopher.a.dickens@gmail.com> | 2018-03-12 10:24:04 -0700 |
commit | 81ce8be59b608622b8f383022572ff947b12540d (patch) | |
tree | 4b4bc2c218346a755f3d4758dada60da99c49651 /libusb/os/windows_winusb.h | |
parent | 828ec954244cb9bdfa207d381abd4155dbd1cc36 (diff) | |
download | libusb-81ce8be59b608622b8f383022572ff947b12540d.tar.gz |
Windows: WinUSB: Do not assume that driver implements CancelIoEx()
Cancelling an individual OVERLAPPED I/O operation is something that a
driver can optionally implement. It appears that the native WinUSB
driver supports this but libusbK does not. Therefore we will attempt
to use it and fall back to the AbortPipe() call if an error occurs.
Closes #400
Signed-off-by: Chris Dickens <christopher.a.dickens@gmail.com>
Diffstat (limited to 'libusb/os/windows_winusb.h')
-rw-r--r-- | libusb/os/windows_winusb.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/libusb/os/windows_winusb.h b/libusb/os/windows_winusb.h index 299dc6c..597384a 100644 --- a/libusb/os/windows_winusb.h +++ b/libusb/os/windows_winusb.h @@ -603,6 +603,7 @@ typedef BOOL(WINAPI *WinUsb_IsoWritePipe_t)( struct winusb_interface { bool initialized; + bool CancelIoEx_supported; WinUsb_AbortPipe_t AbortPipe; WinUsb_ControlTransfer_t ControlTransfer; WinUsb_FlushPipe_t FlushPipe; |