| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Peter Stuge)
v1.0.6 release
Darwin: support multiple calls to libusb_init
Credit to Orin Eman for finding this bug.
Darwin: use logging functions
Use usbi_warn, usbi_err, and usbi_info instead of _usbi_log.
Darwin: fix memory leak in process_device
Credit to Mike Colagrosso for finding this bug.
Add internal abstraction for POSIX Threads
This prepares for a Windows backend without dependency on pthreads-w32.
pthread_* is renamed to usbi_* and PTHREAD_* to USBI_*.
A usbi_mutex_static_t and usbi_mutex_static_lock() and _unlock() are
introduced for statically initialized mutexes, since they may be
implemented using other types when pthreads mutexes aren't used.
Move -pthread from libusb/Makefile.am to host-specific AM_CFLAGS in
configure.ac. AM_CFLAGS is already used in Makefile.am.
(Numerous merge conflicts resolved by Michael Plante)
misc fixes to pthreads abstraction
* windows_compat.h should not be directly included (use libusbi.h)
* windows_usb.c still had some references to pthread_mutex_[un]lock
Add libusb_strerror() to get short error message in English from enum
(Merge conflicts resolved by Michael Plante)
Better cleanup on errors, stricter types and some good casts
Avoid various memory leaks in error code paths and remove warnings. Also
add usbi_cond_destroy in os/threads_posix.h because it's used for cleanup
now.
(Merge conflicts resolved by Michael Plante)
Rename all interface parameters to usb_interface or interface_number
(Merge conflicts resolved by Michael Plante)
Add type parameter to the list_for_each_entry() and _safe() macros
(Merge conflicts resolved by Michael Plante)
VA_ARGS workaround for logging with MSVC6
(Merge conflicts resolved by Michael Plante)
Fix context memory leak in libusb_init()
* Now holds default_context_lock for duration of libusb_init
* Doesn't allocate it if not needed
Fix the last MSVC /W3 warning
removal of pthreads from MSVC and mingw
* removed pthread*.lib from linking in msvc6 (2005/8 not yet edited)
* added threads_windows.[ch] to all project files in msvc6
* added usbi_cond_signal to both threading versions, unused
* added native windows threading code, now used
removed redundant time.h includes
removed pthread-win32 informational solution files
updated MSVC 2005/2008 for thread abstraction
fixed DDK build
fixed cygwin's use of POSIX threads
fixed dpfp/dpfp_threaded for MinGW compatibility
config_msvc.h -> msvc/config.h
pthread abstraction for DLL project files
fixed bad reference to thread_windows in 2005 DLL vcproj
cygwin ifdef is not required in threads_windows.h - removed
fixed residuals from previous patches
moved thread source detection into autotool scripts
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
added ERROR_SEM_TIMEOUT case in windows_transfer_callback,
FORCE_INSTANT_TIMEOUTS compilation option + uint8_t fix for ddk_build
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
previous change there was unnecessary and actually messed up control transfers
|
| |
|
| |
|
| |
|
|
|
|
|
| |
also cleanup single-index arrays, remove unnecessary goto and
additional cleanup
|
|
|
|
|
| |
* failed to check CreateSemaphore()
* index out of bounds on timer_index
|
|
|
|
|
| |
processing of HID report IDs in hid_open using HidP_GetValueCaps
added corresponding DLL call
|
|
|
|
| |
clarification for the compilation option above
|
|
|
|
|
| |
removes the use of transfer->buffer as dest in hid_copy_transfer_data
uses private hid_dest copy from windows_transfer_priv instead
|
|
|
|
| |
introduces the use of multiple driver names in the USB API backends
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
autoclaim handling
- moved compilation options from config_msvc.h to windows_usb.c
- processed remaining TODOs
|
|
|
|
|
|
|
|
| |
- discard report ID from buffer (new hid_buffer in transfer_priv & new copy_transfer_data backend call)
- overflow detection
- extended HID xusb test
Also:
- fixed ill placed memset on composite device siblings detection
|
| |
|
| |
|
| |
|
|
|
|
| |
only)
|
|
|
|
|
|
| |
- use CancelIoEx when available
- handle pending Overlapped / extra data
- move windows version to compat
|
| |
|
| |
|
| |
|
|
|
|
| |
in one of our headers
|
|
|
|
|
|
| |
rather than _for_poll suffix)
additional minor xusb improvements.
|
| |
|
|
|
|
| |
warnings for MSVC (windows files)
|
|
|
|
|
|
| |
- forces command length to 31
- null termination of vid/pid/rev strings
- big endian detection
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
handling for Windows files) [c119->c137]:
c119: concurrency handling: - use semaphore in init/exit (Orin Eman) - use separate thread for timer and remove the need for affinity restoration - minor code readability improvements (moved GUIDs to .h)
c120: removed unneeded disabling of APIs in winusb_exit & hid_exit
c121: changed CreateThread to _beginthreadex, so CRT works properly when mem is low (Michael Plante)
c122: made name of named-semaphore unique across the system per-process (Michael Plante)
c123: allow timer thread to quit gracefully, and cleanup many of the handles (Michael Plante)
c124: fixed concurrent_usage if init fails (Michael Plante)
c125: drop PulseEvent in timer thread and use semaphore for response (Orin Eman).
c126: removed pthread dependency in windows_compat.c
c127: fixed missing reset of timer_request when event has already been handled
c128: additional fixes for timer thread: - closed timer_mutex handles, and fixed volatile warning regarding interlocked ops (Michael Plante) - missing ResetEvent and possible missing request handling fix (Orin Eman) - additional fixes
c129: use of spinlocks and critical sections in windows_compat.c for mutexes (Orin Eman, Michael Plante)
c130: fixed missing spinlock in exit_polling
c131: made spinlock static, changed to LONG, and casted off volatile in InterlockedExchange calls (Michael Plante)
c132: additional security checks when entering critical sections in windows_compat.c
c133: brought latest master commits to the concurrency branch [r119 -> r122]
c134: fixed unfortunate inverted comparison introduced in c132
c135: fixed timer thread warnings with MinGW
c136: brought latest master commits to the concurrency branch [r123 -> r126]
c137: removed pthread.h and sched.h includes from windows_usb.c
|
| |
|
| |
|
| |
|
|
|
|
| |
undefined always on Windows
|
|
|
|
|
|
|
| |
_libusb_####)
- fixed sscanf_s undefined for non MS compilers
- fixed cygiwn warnings in windows_usb.c
|
| |
|