From e067eb31fc0161c34c1af1595415bfeeccd29789 Mon Sep 17 00:00:00 2001 From: Benny Prijono Date: Wed, 1 Mar 2006 19:27:06 +0000 Subject: Fixed bug in timer, where poll() can return negative time, causing havoc with other polling function that depends on the value git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@251 74dad513-b988-da41-8d7b-12977e46ad98 --- pjlib/src/pj/timer.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'pjlib') diff --git a/pjlib/src/pj/timer.c b/pjlib/src/pj/timer.c index 2a791b63..6f7a2216 100644 --- a/pjlib/src/pj/timer.c +++ b/pjlib/src/pj/timer.c @@ -505,6 +505,8 @@ PJ_DEF(unsigned) pj_timer_heap_poll( pj_timer_heap_t *ht, if (ht->cur_size && next_delay) { *next_delay = ht->heap[0]->_timer_value; PJ_TIME_VAL_SUB(*next_delay, now); + if (next_delay->sec < 0 || next_delay->msec < 0) + next_delay->sec = next_delay->msec = 0; } else if (next_delay) { next_delay->sec = next_delay->msec = PJ_MAXINT32; } -- cgit v1.2.3