From 2cff5b6563e4b8d70c5e9aaaa38fe6052cd2908b Mon Sep 17 00:00:00 2001 From: Rosen Penev Date: Fri, 4 Oct 2019 13:23:33 -0700 Subject: [PATCH] telldus-core: Fix compilation without usleep Uses C++11's sleep_for, which internally uses nanosleep. Signed-off-by: Rosen Penev --- utils/telldus-core/patches/930-usleep.patch | 40 +++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 utils/telldus-core/patches/930-usleep.patch diff --git a/utils/telldus-core/patches/930-usleep.patch b/utils/telldus-core/patches/930-usleep.patch new file mode 100644 index 000000000..7c30a105e --- /dev/null +++ b/utils/telldus-core/patches/930-usleep.patch @@ -0,0 +1,40 @@ +--- a/common/common.h ++++ b/common/common.h +@@ -25,15 +25,13 @@ + #ifdef _WINDOWS + #include // NOLINT(readability/streams) + #endif ++#include + #include ++#include + #include "common/Strings.h" + + inline void msleep( const int msec) { +-#ifdef _WINDOWS +- Sleep(msec); +-#else +- usleep(msec*1000); +-#endif ++ std::this_thread::sleep_for(std::chrono::milliseconds(msec)); + } + + inline void dlog(const char *fmt, ...) { +--- a/service/TellStick_libftdi.cpp ++++ b/service/TellStick_libftdi.cpp +@@ -8,7 +8,6 @@ + #include + #include + #include +-#include + #include + #include + +@@ -231,7 +230,7 @@ int TellStick::send( const std::string &strMessage ) { + return TELLSTICK_SUCCESS; + } + } else if(ret == 0) { // No data available +- usleep(100); ++ std::this_thread::sleep_for(std::chrono::microseconds(100)); + } else { // Error + Log::debug("Broken pipe on read"); + return TELLSTICK_ERROR_BROKEN_PIPE;