diff --git a/src/stream_sock.c b/src/stream_sock.c index 8c9f765e5..44d9e113a 100644 --- a/src/stream_sock.c +++ b/src/stream_sock.c @@ -885,16 +885,15 @@ void stream_sock_shutw(struct stream_interface *si) case SI_ST_QUE: case SI_ST_TAR: si->state = SI_ST_DIS; + + if (si->release) + si->release(si); default: si->flags &= ~SI_FL_WAIT_ROOM; si->ib->flags |= BF_SHUTR; si->ib->rex = TICK_ETERNITY; si->exp = TICK_ETERNITY; - return; } - - if (si->release) - si->release(si); } /*