mirror of
https://github.com/haproxy/haproxy.git
synced 2026-02-17 09:37:53 -05:00
MEDIUM: mux-pt: Don't always set a final error on SE on the sending path
SE_FL_ERROR must be set on the SE descriptor only if EOS was already reported. So call se_fl_set_error() function to properly the ERR_PENDING/ERROR flags. It is not really a bug because the mux-pt is really simple. But it is better to do it now the right way.
This commit is contained in:
parent
31da34d1e7
commit
b65af26e19
1 changed files with 2 additions and 2 deletions
|
|
@ -557,7 +557,7 @@ static size_t mux_pt_snd_buf(struct stconn *sc, struct buffer *buf, size_t count
|
|||
b_del(buf, ret);
|
||||
|
||||
if (conn->flags & CO_FL_ERROR) {
|
||||
se_fl_set(ctx->sd, SE_FL_ERROR);
|
||||
se_fl_set_error(ctx->sd);
|
||||
TRACE_DEVEL("error on connection", PT_EV_TX_DATA|PT_EV_CONN_ERR, conn, sc);
|
||||
}
|
||||
|
||||
|
|
@ -625,7 +625,7 @@ static int mux_pt_snd_pipe(struct stconn *sc, struct pipe *pipe)
|
|||
ret = conn->xprt->snd_pipe(conn, conn->xprt_ctx, pipe);
|
||||
|
||||
if (conn->flags & CO_FL_ERROR) {
|
||||
se_fl_set(ctx->sd, SE_FL_ERROR);
|
||||
se_fl_set_error(ctx->sd);
|
||||
TRACE_DEVEL("error on connection", PT_EV_TX_DATA|PT_EV_CONN_ERR, conn, sc);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue