]> git.meshlink.io Git - catta/blobdiff - avahi-qt/qt-watch.cpp
Update doxygen docs a little to make clearer when to use what API when modifying...
[catta] / avahi-qt / qt-watch.cpp
index c0b21402348722b742cbc74563fac4d444a214b0..5b49845e5f278da6c802f83e1c5e92085d2ee1c0 100644 (file)
@@ -29,6 +29,7 @@
 #include <qobject.h>
 #include <qtimer.h>
 #endif
+#include <avahi-common/timeval.h>
 #include "qt-watch.h"
 
 class AvahiWatch : public QObject 
@@ -125,12 +126,11 @@ void AvahiTimeout::update(const struct timeval *tv)
 {
     m_timer.stop();
     if (tv) {
-        struct timeval now;
-        gettimeofday(&now, 0);
+    AvahiUsec u = avahi_age(tv)/1000;
 #ifdef QT4
-        m_timer.start((tv->tv_sec-now.tv_sec)*1000+(tv->tv_usec-now.tv_usec)/1000);
+    m_timer.start( (u>0) ? 0 : -u);
 #else
-        m_timer.start((tv->tv_sec-now.tv_sec)*1000+(tv->tv_usec-now.tv_usec)/1000,true);
+    m_timer.start( (u>0) ? 0 : -u,true);
 #endif
     }
 }