MINOR: http: further cleanups of response forwarding function

There is no reason for mixing compressing and non-compressing
code in the DATA state, they don't share anything. Better make
this clearer.
diff --git a/src/proto_http.c b/src/proto_http.c
index 8e0b0bf..114efef 100644
--- a/src/proto_http.c
+++ b/src/proto_http.c
@@ -6227,17 +6227,19 @@
 				if (ret < 0)
 					goto aborted_xfer;
 
-				if (res->to_forward || msg->chunk_len) {
-					res->flags |= CF_WAKE_WRITE;
+				if (msg->chunk_len) {
+					/* input empty or output full */
+					if (res->buf->i > msg->next)
+						res->flags |= CF_WAKE_WRITE;
 					goto missing_data;
 				}
 			}
-
-			if (msg->chunk_len > res->buf->i - msg->next) {
-				res->flags |= CF_WAKE_WRITE;
-				goto missing_data;
-			}
 			else {
+				if (msg->chunk_len > res->buf->i - msg->next) {
+					/* output full */
+					res->flags |= CF_WAKE_WRITE;
+					goto missing_data;
+				}
 				msg->next += msg->chunk_len;
 				msg->chunk_len = 0;
 			}