[BUG] do not forward close from cons to prod with analysers

We must not forward a close from consumer to producer as long as
an analyser is present.
diff --git a/src/session.c b/src/session.c
index 0df174a..29ddb6f 100644
--- a/src/session.c
+++ b/src/session.c
@@ -759,7 +759,8 @@
 		s->req->cons->shutw(s->req->cons);
 
 	/* shutdown(write) done on server side, we must stop the client too */
-	if (unlikely((s->req->flags & (BF_SHUTW|BF_SHUTR|BF_SHUTR_NOW)) == BF_SHUTW))
+	if (unlikely((s->req->flags & (BF_SHUTW|BF_SHUTR|BF_SHUTR_NOW)) == BF_SHUTW &&
+		     !s->req->analysers))
 		buffer_shutr_now(s->req);
 
 	/* shutdown(read) pending */
@@ -857,7 +858,8 @@
 		s->rep->cons->shutw(s->rep->cons);
 
 	/* shutdown(write) done on the client side, we must stop the server too */
-	if (unlikely((s->rep->flags & (BF_SHUTW|BF_SHUTR|BF_SHUTR_NOW)) == BF_SHUTW))
+	if (unlikely((s->rep->flags & (BF_SHUTW|BF_SHUTR|BF_SHUTR_NOW)) == BF_SHUTW) &&
+	    !s->rep->analysers)
 		buffer_shutr_now(s->rep);
 
 	/* shutdown(read) pending */