[MEDIUM] tcp-request : don't wait for inspect-delay to expire when the buffer is full

If a request buffer is full, there's no point waiting for the timeout to
expire, the contents will not change.
diff --git a/doc/configuration.txt b/doc/configuration.txt
index 926ce9a..9eedf79 100644
--- a/doc/configuration.txt
+++ b/doc/configuration.txt
@@ -5497,7 +5497,9 @@
   to use large values, for instance to ensure that the client never talks
   before the server (eg: SMTP), or to wait for a client to talk before passing
   data to the server (eg: SSL). Note that the client timeout must cover at
-  least the inspection delay, otherwise it will expire first.
+  least the inspection delay, otherwise it will expire first. If the client
+  closes the connection or if the buffer is full, the delay immediately expires
+  since the contents will not be able to change anymore.
 
   See also : "tcp-request content accept", "tcp-request content reject",
              "timeout client".
diff --git a/src/proto_tcp.c b/src/proto_tcp.c
index 2670666..22179b9 100644
--- a/src/proto_tcp.c
+++ b/src/proto_tcp.c
@@ -646,7 +646,7 @@
 	 * - if one rule returns KO, then return KO
 	 */
 
-	if (req->flags & BF_SHUTR || !s->be->tcp_req.inspect_delay || tick_is_expired(req->analyse_exp, now_ms))
+	if (req->flags & (BF_SHUTR|BF_FULL) || !s->be->tcp_req.inspect_delay || tick_is_expired(req->analyse_exp, now_ms))
 		partial = 0;
 	else
 		partial = ACL_PARTIAL;