[MINOR] http: pre-set the persistent flags in the transaction
We should pre-set the persistent flags then try to clear them
instead of the opposite.
diff --git a/src/proto_http.c b/src/proto_http.c
index 31a2098..207483c 100644
--- a/src/proto_http.c
+++ b/src/proto_http.c
@@ -2069,16 +2069,20 @@
conn_ka = 1;
}
+ /* prepare flags for this transaction */
+ txn->flags |= (TX_CLI_CONN_KA | TX_SRV_CONN_KA);
+ txn->flags |= (TX_CLI_CONN_KA | TX_SRV_CONN_KA);
+
if ((msg->sl.rq.v_l == 8) &&
(req->data[msg->som + msg->sl.rq.v + 5] == '1') &&
(req->data[msg->som + msg->sl.rq.v + 7] == '0')) {
/* HTTP/1.0 */
- if (conn_ka)
- txn->flags |= (TX_CLI_CONN_KA | TX_SRV_CONN_KA);
+ if (!conn_ka)
+ txn->flags &= ~(TX_CLI_CONN_KA | TX_SRV_CONN_KA);
} else {
- /* HTTP/1.0 */
- if (!conn_cl)
- txn->flags |= (TX_CLI_CONN_KA | TX_SRV_CONN_KA);
+ /* HTTP/1.1 */
+ if (conn_cl)
+ txn->flags &= ~(TX_CLI_CONN_KA | TX_SRV_CONN_KA);
}
/* we can mark the connection as non-persistent if needed */