There was a serious bug with scheduler, related to locking.
diff --git a/scheduler/task.cc b/scheduler/task.cc
index cfe48c1..0d09199 100644
--- a/scheduler/task.cc
+++ b/scheduler/task.cc
@@ -60,8 +60,11 @@
void
Task::setTv(double delay)
{
+ // Alex: when using abs function, i would recommend use it with std:: prefix, otherwise
+ // the standard one may be used, which converts everything to INT, making a lot of problems
double intPart, fraction;
- fraction = modf(abs(delay), &intPart);
+ fraction = modf(std::abs(delay), &intPart);
+
m_tv->tv_sec = static_cast<int>(intPart);
m_tv->tv_usec = static_cast<int>((fraction * 1000000));
}