diff --git a/core/serial_ftdi.c b/core/serial_ftdi.c index 86d27c9ff..b3f2f2f37 100644 --- a/core/serial_ftdi.c +++ b/core/serial_ftdi.c @@ -26,12 +26,17 @@ #include // strerror #include // errno #include // gettimeofday -#include // nanosleep #include #include #include +#ifdef _WIN32 +#include // Sleep +#else +#include // nanosleep +#endif + #ifndef __ANDROID__ #define INFO(context, fmt, ...) fprintf(stderr, "INFO: " fmt "\n", ##__VA_ARGS__) #define ERROR(context, fmt, ...) fprintf(stderr, "ERROR: " fmt "\n", ##__VA_ARGS__) @@ -107,6 +112,9 @@ static dc_status_t serial_ftdi_sleep (void *io, unsigned int timeout) INFO (device->context, "Sleep: value=%u", timeout); +#ifdef _WIN32 + Sleep((DWORD)timeout); +#else struct timespec ts; ts.tv_sec = (timeout / 1000); ts.tv_nsec = (timeout % 1000) * 1000000; @@ -117,6 +125,7 @@ static dc_status_t serial_ftdi_sleep (void *io, unsigned int timeout) return DC_STATUS_IO; } } +#endif return DC_STATUS_SUCCESS; }