Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nginx/nginx.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/event/ngx_event_timer.c')
-rw-r--r--src/event/ngx_event_timer.c20
1 files changed, 10 insertions, 10 deletions
diff --git a/src/event/ngx_event_timer.c b/src/event/ngx_event_timer.c
index 416cb13f0..72f2cd2bd 100644
--- a/src/event/ngx_event_timer.c
+++ b/src/event/ngx_event_timer.c
@@ -21,9 +21,9 @@ int ngx_event_timer_init(ngx_cycle_t *cycle)
}
ngx_event_timer_rbtree = &ngx_event_timer_sentinel;
- ngx_event_timer_sentinel.left = &ngx_event_timer_sentinel;
#if 0
+ ngx_event_timer_sentinel.left = &ngx_event_timer_sentinel;
ngx_event_timer_sentinel.right = &ngx_event_timer_sentinel;
ngx_event_timer_sentinel.parent = &ngx_event_timer_sentinel;
#endif
@@ -41,19 +41,18 @@ ngx_msec_t ngx_event_find_timer(void)
{
ngx_rbtree_t *node;
- node = ngx_rbtree_min(ngx_event_timer_rbtree, &ngx_event_timer_sentinel);
-
- if (node == &ngx_event_timer_sentinel) {
+ if (ngx_event_timer_rbtree == &ngx_event_timer_sentinel) {
return 0;
+ }
+
+ node = ngx_rbtree_min(ngx_event_timer_rbtree, &ngx_event_timer_sentinel);
- } else {
- return (ngx_msec_t)
+ return (ngx_msec_t)
(node->key * NGX_TIMER_RESOLUTION -
ngx_elapsed_msec / NGX_TIMER_RESOLUTION * NGX_TIMER_RESOLUTION);
#if 0
(node->key * NGX_TIMER_RESOLUTION - ngx_elapsed_msec);
#endif
- }
}
@@ -63,13 +62,14 @@ void ngx_event_expire_timers(ngx_msec_t timer)
ngx_rbtree_t *node;
for ( ;; ) {
- node = ngx_rbtree_min(ngx_event_timer_rbtree,
- &ngx_event_timer_sentinel);
- if (node == &ngx_event_timer_sentinel) {
+ if (ngx_event_timer_rbtree == &ngx_event_timer_sentinel) {
break;
}
+ node = ngx_rbtree_min(ngx_event_timer_rbtree,
+ &ngx_event_timer_sentinel);
+
if ((ngx_msec_t) node->key <= (ngx_msec_t)
(ngx_old_elapsed_msec + timer) / NGX_TIMER_RESOLUTION)
{