Author: emax
Date: Mon Apr 20 16:57:43 2009
New Revision: 191326
URL: http://svn.freebsd.org/changeset/base/191326

Log:
  MFC r191232
  
  Fix bug in event timeout handling
  
  Submitted by: mav
  Approved by:  re (kib)

Modified:
  stable/7/usr.sbin/bluetooth/btpand/   (props changed)
  stable/7/usr.sbin/bluetooth/btpand/event.c

Modified: stable/7/usr.sbin/bluetooth/btpand/event.c
==============================================================================
--- stable/7/usr.sbin/bluetooth/btpand/event.c  Mon Apr 20 16:55:48 2009        
(r191325)
+++ stable/7/usr.sbin/bluetooth/btpand/event.c  Mon Apr 20 16:57:43 2009        
(r191326)
@@ -110,12 +110,12 @@ __event_dispatch(void)
                event_del(ev);
 
                if (ev->flags & EV_HAS_TIMEOUT) {
-                       t = now;
-
-                       if (tv_cmp(&t, &ev->expire) <= 0)
+                       if (tv_cmp(&now, &ev->expire) >= 0)
                                t.tv_sec = t.tv_usec = 0;
-                       else
-                               tv_sub(&t, &ev->expire);
+                       else {
+                               t = ev->expire;
+                               tv_sub(&t, &now);
+                       }
 
                        if (tv_cmp(&t, &timeout) < 0)
                                timeout = t;
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to