BUG/MEDIUM: mux_h1: Don't call h1_send if we subscribed().

In h1_snd_buf(), only attempt to call h1_send() if we haven't
already subscribed.
It makes no sense to do it if we subscribed, as we know we failed
to send before, and will create a useless call to sendto(), and
in 2.2, the call to raw_sock_from_buf() will disable polling if
it is enabled.

This should be backported to 2.2, 2.1, 2.0 and 1.9.
This commit is contained in:
Olivier Houchard 2020-01-15 19:13:32 +01:00
parent 8602394040
commit 68787ef70a
1 changed files with 1 additions and 1 deletions

View File

@ -2672,7 +2672,7 @@ static size_t h1_snd_buf(struct conn_stream *cs, struct buffer *buf, size_t coun
break;
total += ret;
count -= ret;
if (!h1_send(h1c))
if ((h1c->wait_event.events & SUB_RETRY_SEND) || !h1_send(h1c))
break;
}