summaryrefslogtreecommitdiffhomepage
path: root/facetracknoir/tracker.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'facetracknoir/tracker.cpp')
-rw-r--r--facetracknoir/tracker.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/facetracknoir/tracker.cpp b/facetracknoir/tracker.cpp
index ebc8246d..094264ff 100644
--- a/facetracknoir/tracker.cpp
+++ b/facetracknoir/tracker.cpp
@@ -108,6 +108,8 @@ void Tracker::run() {
for (;;)
{
+ t.start();
+
if (should_quit)
break;
@@ -163,7 +165,9 @@ void Tracker::run() {
}
}
- msleep(sleep_ms);
+ const long q = std::max(0L, sleep_ms * 1000L - std::max(0L, t.elapsed()));
+
+ usleep(q);
}
#if defined(_WIN32)
(void) timeEndPeriod(1);