diff --git a/src/quic_sock.c b/src/quic_sock.c index 2ecc96bae..ac83b9883 100644 --- a/src/quic_sock.c +++ b/src/quic_sock.c @@ -150,7 +150,7 @@ struct connection *quic_sock_accept_conn(struct listener *l, int *status) struct li_per_thread *lthr = &l->per_thr[tid]; qc = MT_LIST_POP(<hr->quic_accept.conns, struct quic_conn *, accept_list); - if (!qc) + if (!qc || qc->flags & (QUIC_FL_CONN_CLOSING|QUIC_FL_CONN_DRAINING)) goto done; if (!new_quic_cli_conn(qc, l, &qc->peer_addr))