From 3e7536ef4d52dc5db7123e7ff549bc608391a764 Mon Sep 17 00:00:00 2001 From: mmichelson Date: Mon, 18 Aug 2008 20:07:42 +0000 Subject: Merged revisions 138687 via svnmerge from https://origsvn.digium.com/svn/asterisk/trunk ................ r138687 | mmichelson | 2008-08-18 15:04:10 -0500 (Mon, 18 Aug 2008) | 18 lines Merged revisions 138685 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r138685 | mmichelson | 2008-08-18 15:01:14 -0500 (Mon, 18 Aug 2008) | 10 lines Change the inequalities used in app_queue with regards to timeouts from being strict to non-strict for more accuracy. (closes issue #13239) Reported by: atis Patches: app_queue_timeouts_v2.patch uploaded by atis (license 242) ........ ................ git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.1@138689 f38db490-d61c-443f-a65b-d21fe96a405b --- apps/app_queue.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'apps/app_queue.c') diff --git a/apps/app_queue.c b/apps/app_queue.c index 40de07b2f..405443737 100644 --- a/apps/app_queue.c +++ b/apps/app_queue.c @@ -2855,7 +2855,7 @@ static int wait_our_turn(struct queue_ent *qe, int ringing, enum queue_result *r break; /* If we have timed out, break out */ - if (qe->expire && (time(NULL) > qe->expire)) { + if (qe->expire && (time(NULL) >= qe->expire)) { *reason = QUEUE_TIMEOUT; break; } @@ -2890,7 +2890,7 @@ static int wait_our_turn(struct queue_ent *qe, int ringing, enum queue_result *r break; /* If we have timed out, break out */ - if (qe->expire && (time(NULL) > qe->expire)) { + if (qe->expire && (time(NULL) >= qe->expire)) { *reason = QUEUE_TIMEOUT; break; } @@ -2901,12 +2901,12 @@ static int wait_our_turn(struct queue_ent *qe, int ringing, enum queue_result *r break; /* see if we need to move to the next penalty level for this queue */ - while (qe->pr && ((time(NULL) - qe->start) > qe->pr->time)) { + while (qe->pr && ((time(NULL) - qe->start) >= qe->pr->time)) { update_qe_rule(qe); } /* If we have timed out, break out */ - if (qe->expire && (time(NULL) > qe->expire)) { + if (qe->expire && (time(NULL) >= qe->expire)) { *reason = QUEUE_TIMEOUT; break; } @@ -2920,7 +2920,7 @@ static int wait_our_turn(struct queue_ent *qe, int ringing, enum queue_result *r } /* If we have timed out, break out */ - if (qe->expire && (time(NULL) > qe->expire)) { + if (qe->expire && (time(NULL) >= qe->expire)) { *reason = QUEUE_TIMEOUT; break; } @@ -3245,7 +3245,7 @@ static int try_calling(struct queue_ent *qe, const char *options, char *announce * This should be extremely rare. queue_exec will take care * of removing the caller and reporting the timeout as the reason. */ - if (qe->expire && now > qe->expire) { + if (qe->expire && now >= qe->expire) { res = 0; goto out; } @@ -4707,7 +4707,7 @@ check_turns: enum queue_member_status status; /* Leave if we have exceeded our queuetimeout */ - if (qe.expire && (time(NULL) > qe.expire)) { + if (qe.expire && (time(NULL) >= qe.expire)) { record_abandoned(&qe); reason = QUEUE_TIMEOUT; res = 0; @@ -4730,7 +4730,7 @@ check_turns: goto stop; /* Leave if we have exceeded our queuetimeout */ - if (qe.expire && (time(NULL) > qe.expire)) { + if (qe.expire && (time(NULL) >= qe.expire)) { record_abandoned(&qe); reason = QUEUE_TIMEOUT; res = 0; @@ -4786,7 +4786,7 @@ check_turns: } /* Leave if we have exceeded our queuetimeout */ - if (qe.expire && (time(NULL) > qe.expire)) { + if (qe.expire && (time(NULL) >= qe.expire)) { record_abandoned(&qe); reason = QUEUE_TIMEOUT; res = 0; -- cgit v1.2.3