summaryrefslogtreecommitdiffhomepage
path: root/src/event
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/event/ngx_event_connect.c14
-rw-r--r--src/event/ngx_event_connect.h2
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_ */