#include <usb.h>
#include <signal.h>
#include <pthread.h>
+#include <errno.h>
#include "usb-driver.h"
static int (*ioctl_func) (int, int, void *) = NULL;
it->dwLost, it->fStopped);
it->fEnableOk = 1;
+ it->fStopped = 0;
ints_enabled = 1;
pthread_mutex_trylock(&int_wait);
}
it->dwCounter = 0;
it->fStopped = 1;
ints_enabled = 0;
- pthread_mutex_unlock(&int_wait);
+ if (pthread_mutex_trylock(&int_wait) == EBUSY)
+ pthread_mutex_unlock(&int_wait);
#endif
DPRINTF("Handle: %lu, Options: %lx, ncmds: %lu, enableok: %lu, count: %lu, lost: %lu, stopped: %lu\n",
it->hInterrupt, it->dwOptions,