diff src/event/ngx_event_timer.c @ 207:6e0fef527732

nginx-0.0.1-2003-12-05-20:07:27 import
author Igor Sysoev <igor@sysoev.ru>
date Fri, 05 Dec 2003 17:07:27 +0000
parents 9aa426375256
children e1c815be05ae
line wrap: on
line diff
--- a/src/event/ngx_event_timer.c
+++ b/src/event/ngx_event_timer.c
@@ -5,14 +5,15 @@
 
 
 ngx_rbtree_t  *ngx_event_timer_rbtree;
+ngx_rbtree_t   ngx_event_timer_sentinel;
 
 
 int ngx_event_timer_init(ngx_cycle_t *cycle)
 {
-    ngx_event_timer_rbtree = &sentinel;
-    sentinel.left = &sentinel;
-    sentinel.right = &sentinel;
-    sentinel.parent = &sentinel;
+    ngx_event_timer_rbtree = &ngx_event_timer_sentinel;
+    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;
 
     return NGX_OK;
 }
@@ -27,9 +28,9 @@ ngx_msec_t ngx_event_find_timer(void)
 {
     ngx_rbtree_t  *node;
 
-    node = ngx_rbtree_min(ngx_event_timer_rbtree);
+    node = ngx_rbtree_min(ngx_event_timer_rbtree, &ngx_event_timer_sentinel);
 
-    if (node == &sentinel) {
+    if (node == &ngx_event_timer_sentinel) {
         return 0;
 
     } else {
@@ -45,14 +46,15 @@ void ngx_event_expire_timers(ngx_msec_t 
     ngx_rbtree_t  *node;
 
     for ( ;; ) {
-        node = ngx_rbtree_min(ngx_event_timer_rbtree);
+        node = ngx_rbtree_min(ngx_event_timer_rbtree,
+                              &ngx_event_timer_sentinel);
 
-        if (node == &sentinel) {
+        if (node == &ngx_event_timer_sentinel) {
             break;
         }
 
         if ((ngx_msec_t) node->key <= (ngx_msec_t)
-                             (ngx_elapsed_msec + timer) / NGX_TIMER_RESOLUTION)
+                         (ngx_old_elapsed_msec + timer) / NGX_TIMER_RESOLUTION)
         {
             ev = (ngx_event_t *)
                            ((char *) node - offsetof(ngx_event_t, rbtree_key));