nginx-0.0.7-2004-07-06-20:12:16 import
diff --git a/src/event/ngx_event_timer.c b/src/event/ngx_event_timer.c
index 0b38220..c73dfa4 100644
--- a/src/event/ngx_event_timer.c
+++ b/src/event/ngx_event_timer.c
@@ -68,6 +68,11 @@
ngx_event_t *ev;
ngx_rbtree_t *node;
+ if (timer < 0) {
+ /* avoid the endless loop if the time goes backward for some reason */
+ timer = 0;
+ }
+
for ( ;; ) {
if (ngx_event_timer_rbtree == &ngx_event_timer_sentinel) {
@@ -99,6 +104,9 @@
* been handling has expired timer.
*/
+ ngx_log_debug1(NGX_LOG_DEBUG_EVENT, ev->log, 0,
+ "event " PTR_FMT " is busy in expire timers",
+ ev);
break;
}
#endif