]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
BUG/MEDIUM: mux_h2: Call h2_send() before updating polling.
authorOlivier Houchard <cognet@ci0.org>
Fri, 20 Jul 2018 16:15:23 +0000 (18:15 +0200)
committerWilly Tarreau <w@1wt.eu>
Fri, 20 Jul 2018 17:07:49 +0000 (19:07 +0200)
In h2_wake(), make sure we call h2_send() before we try to update the
polling flags, and detect connection errors, or errors will never be
detected.

src/mux_h2.c

index 3dfb396a5420f185a798945baeb089634a81893a..41bd8ebbb765ee64ce19539eb3d2ec566c38751d 100644 (file)
@@ -2273,6 +2273,7 @@ static int h2_wake(struct connection *conn)
        struct h2c *h2c = conn->mux_ctx;
        struct session *sess = conn->owner;
 
+       h2_send(NULL, conn, 0);
        if (b_data(&h2c->dbuf) && !(h2c->flags & H2_CF_DEM_BLOCK_ANY)) {
                h2_process_demux(h2c);
 
@@ -2369,7 +2370,6 @@ static int h2_wake(struct connection *conn)
                        h2c->task->expire = TICK_ETERNITY;
        }
 
-       h2_send(NULL, conn, 0);
        return 0;
 }