diff --git a/src/proto_http.c b/src/proto_http.c index 692bb9f10..b4ec78815 100644 --- a/src/proto_http.c +++ b/src/proto_http.c @@ -2862,13 +2862,13 @@ int http_process_req_common(struct session *s, struct buffer *req, int an_bit, s continue; /* check condition, but only if attached */ - if (!req_acl->cond) - continue; + if (req_acl->cond) { + ret = acl_exec_cond(req_acl->cond, px, s, txn, ACL_DIR_REQ); + ret = acl_pass(ret); - ret = acl_exec_cond(req_acl->cond, px, s, txn, ACL_DIR_REQ); - ret = acl_pass(ret); - if (req_acl->cond->pol == ACL_COND_UNLESS) - ret = !ret; + if (req_acl->cond->pol == ACL_COND_UNLESS) + ret = !ret; + } if (ret) { req_acl_final = req_acl;