From: wessels <> Date: Wed, 20 Jan 1999 02:23:27 +0000 (+0000) Subject: slightly more intelligent loop detector X-Git-Tag: SQUID_3_0_PRE1~2380 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=e07b2888a022f24caebbc974740793194d83ccc8;p=thirdparty%2Fsquid.git slightly more intelligent loop detector --- diff --git a/src/forward.cc b/src/forward.cc index e910131cc1..858b979bb8 100644 --- a/src/forward.cc +++ b/src/forward.cc @@ -1,6 +1,6 @@ /* - * $Id: forward.cc,v 1.51 1999/01/19 18:11:16 wessels Exp $ + * $Id: forward.cc,v 1.52 1999/01/19 19:23:27 wessels Exp $ * * DEBUG: section 17 Request Forwarding * AUTHOR: Duane Wessels @@ -147,11 +147,12 @@ static void fwdConnectDone(int server_fd, int status, void *data) { FwdState *fwdState = data; + static FwdState *current = NULL; FwdServer *fs = fwdState->servers; ErrorState *err; request_t *request = fwdState->request; - static int loop_detect = 0; - assert(loop_detect++ == 0); + assert(current != fwdState); + current = fwdState; assert(fwdState->server_fd == server_fd); if (status == COMM_ERR_DNS) { fwdState->flags.dont_retry = 1; @@ -184,7 +185,7 @@ fwdConnectDone(int server_fd, int status, void *data) fd_table[server_fd].uses++; fwdDispatch(fwdState); } - loop_detect--; + current = NULL; } static void