mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2025-01-19 12:10:46 +00:00
BUG/MEDIUM: mux-h2: Don't report error on SE if error is only pending on H2C
In h2s_wake_one_stream(), we must not report an error on the stream-endpoint descriptor if the error is not definitive on the H2 connection. A pending error on the H2 connection means there are potentially remaining data to be demux. It is important to not truncate a message for a stream. This patch is part of a series that should fix a bug reported in issue #2388 (#2388#issuecomment-1855735144). Backport instructions will be shipped in the last commit of the series.
This commit is contained in:
parent
19fb19976f
commit
580ffd6123
@ -2178,7 +2178,7 @@ static void h2s_wake_one_stream(struct h2s *h2s)
|
||||
h2s_close(h2s);
|
||||
}
|
||||
|
||||
if (h2s->h2c->st0 >= H2_CS_ERROR || (h2s->h2c->flags & (H2_CF_ERR_PENDING|H2_CF_ERROR)) ||
|
||||
if (h2s->h2c->st0 >= H2_CS_ERROR || (h2s->h2c->flags & H2_CF_ERROR) ||
|
||||
(h2s->h2c->last_sid > 0 && (!h2s->id || h2s->id > h2s->h2c->last_sid))) {
|
||||
se_fl_set_error(h2s->sd);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user