[BUG] fix harmless but wrong fd insertion sequence
In backend.c, we had an EV_FD_SET() called before fd_insert(). This is wrong because fd_insert updates maxfd which might be used by some of the pollers during EV_FD_SET(), although this is not currently the case.
This commit is contained in:
parent
79f5fe82f8
commit
788e284d93
@ -1815,9 +1815,9 @@ int connect_server(struct session *s)
|
||||
fdtab[fd].peeraddr = (struct sockaddr *)&s->srv_addr;
|
||||
fdtab[fd].peerlen = sizeof(s->srv_addr);
|
||||
|
||||
EV_FD_SET(fd, DIR_WR); /* for connect status */
|
||||
|
||||
fd_insert(fd);
|
||||
EV_FD_SET(fd, DIR_WR); /* for connect status */
|
||||
|
||||
if (s->srv) {
|
||||
s->srv->cur_sess++;
|
||||
if (s->srv->cur_sess > s->srv->cur_sess_max)
|
||||
|
Loading…
x
Reference in New Issue
Block a user