diff options
Diffstat (limited to 'seduthread.c')
-rw-r--r-- | seduthread.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/seduthread.c b/seduthread.c index ae9b1ec..2ba7bfb 100644 --- a/seduthread.c +++ b/seduthread.c @@ -58,6 +58,7 @@ void cSeduThread::Stop() void cSeduThread::Action() { + time_t last = 0; MsTime wait = 0; cMutexLock lock(&mutex); @@ -70,6 +71,20 @@ void cSeduThread::Action() while (loopActive && Running()) { + if (!sedu.isOpen()) + { + if (last > time(0)-30) + { + waitCondition.TimedWait(mutex, 1000); // wait time in ms + continue; + } + + last = time(0); + + if (sedu.open() != success) + continue; + } + MsTime start = msNow(); // work ... |