diff options
Diffstat (limited to '')
| -rw-r--r-- | src/event/ngx_event_connect.c | 14 | ||||
| -rw-r--r-- | src/event/ngx_event_connect.h | 2 |
2 files changed, 9 insertions, 7 deletions
diff --git a/src/event/ngx_event_connect.c b/src/event/ngx_event_connect.c index 2f559a34d..e07a33d43 100644 --- a/src/event/ngx_event_connect.c +++ b/src/event/ngx_event_connect.c @@ -376,18 +376,20 @@ ngx_event_connect_peer(ngx_peer_connection_t *pc) void -ngx_event_connect_peer_failed(ngx_peer_connection_t *pc) +ngx_event_connect_peer_failed(ngx_peer_connection_t *pc, ngx_uint_t down) { time_t now; - now = ngx_time(); + if (down) { + now = ngx_time(); - /* ngx_lock_mutex(pc->peers->mutex); */ + /* ngx_lock_mutex(pc->peers->mutex); */ - pc->peers->peer[pc->cur_peer].fails++; - pc->peers->peer[pc->cur_peer].accessed = now; + pc->peers->peer[pc->cur_peer].fails++; + pc->peers->peer[pc->cur_peer].accessed = now; - /* ngx_unlock_mutex(pc->peers->mutex); */ + /* ngx_unlock_mutex(pc->peers->mutex); */ + } pc->cur_peer++; diff --git a/src/event/ngx_event_connect.h b/src/event/ngx_event_connect.h index 48863abe5..c8e70747c 100644 --- a/src/event/ngx_event_connect.h +++ b/src/event/ngx_event_connect.h @@ -67,7 +67,7 @@ typedef struct { ngx_int_t ngx_event_connect_peer(ngx_peer_connection_t *pc); -void ngx_event_connect_peer_failed(ngx_peer_connection_t *pc); +void ngx_event_connect_peer_failed(ngx_peer_connection_t *pc, ngx_uint_t down); #endif /* _NGX_EVENT_CONNECT_H_INCLUDED_ */ |
