BUG/MINOR: stream-int: don't try to read again when CF_READ_DONTWAIT is set
Commit9aaf778
("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 commit33982cb
("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…
Reference in New Issue
Block a user