Date: Mon, 20 Apr 2009 16:57:43 +0000 (UTC) From: Maksim Yevmenkin <emax@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-7@freebsd.org Subject: svn commit: r191326 - stable/7/usr.sbin/bluetooth/btpand Message-ID: <200904201657.n3KGvhgv052506@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
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;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200904201657.n3KGvhgv052506>