diff --git a/src/mux_pt.c b/src/mux_pt.c index 72c997d41..c5eb8c60b 100644 --- a/src/mux_pt.c +++ b/src/mux_pt.c @@ -415,7 +415,7 @@ static void mux_pt_detach(struct conn_stream *cs) TRACE_ENTER(PT_EV_STRM_END, conn, cs); /* Subscribe, to know if we got disconnected */ - if (conn->owner != NULL && + if (!conn_is_back(conn) && conn->owner != NULL && !(conn->flags & (CO_FL_ERROR | CO_FL_SOCK_RD_SH | CO_FL_SOCK_WR_SH))) { ctx->cs = NULL; conn->xprt->subscribe(conn, conn->xprt_ctx, SUB_RETRY_RECV, &ctx->wait_event);