From: Rosen Penev Date: Fri, 4 Oct 2019 20:23:33 +0000 (-0700) Subject: telldus-core: Fix compilation without usleep X-Git-Url: http://git.99rst.org/?a=commitdiff_plain;h=2cff5b6563e4b8d70c5e9aaaa38fe6052cd2908b;p=openwrt-packages.git telldus-core: Fix compilation without usleep Uses C++11's sleep_for, which internally uses nanosleep. Signed-off-by: Rosen Penev --- 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;