mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2025-12-10 04:01:11 +01:00
BUG/MINOR: stream-int: don't try to read again when CF_READ_DONTWAIT is set
Commit 9aaf778 ("MAJOR: connection : Split struct connection into struct
connection and struct conn_stream.") had to change the way the stream
interface deals with incoming data to accomodate the mux. A break
statement got lost during a change, leading to the receive call being
performed twice even when CF_READ_DONTWAIT is set. The most noticeable
effect is that it made the bug described in commit 33982cb ("BUG/MAJOR:
stream: ensure analysers are always called upon close") much easier to
reproduce as it would appear even with an HTTP frontend.
Let's just restore the stream-interface flag and the break here, as in
the previous code.
No backport is needed as this was introduced during 1.8-dev.
This commit is contained in:
parent
33982cbdc0
commit
62dd698070
@ -1217,6 +1217,8 @@ static void si_cs_recv_cb(struct conn_stream *cs)
|
||||
* but we may have lost a worthwhile optimization.
|
||||
*/
|
||||
__cs_stop_recv(cs);
|
||||
si->flags |= SI_FL_WAIT_ROOM;
|
||||
break;
|
||||
}
|
||||
|
||||
/* if too many bytes were missing from last read, it means that
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user