diff --git a/src/mux_fcgi.c b/src/mux_fcgi.c
index c502670..f8ee0b7 100644
--- a/src/mux_fcgi.c
+++ b/src/mux_fcgi.c
@@ -146,6 +146,7 @@
 
 /* Other flags */
 #define FCGI_SF_HAVE_I_TLR     0x00010000 /* Set during input process to know the trailers were processed */
+#define FCGI_SF_APPEND_EOM     0x00020000 /* Send EOM to the HTX buffer */
 
 /* FCGI stream descriptor */
 struct fcgi_strm {
@@ -3178,6 +3179,14 @@
 	}
 	*ofs += ret;
   end:
+	if (h1m->state == H1_MSG_DONE) {
+		fstrm->flags &= ~FCGI_SF_APPEND_EOM;
+		TRACE_STATE("end of message", FCGI_EV_RSP_DATA|FCGI_EV_RSP_EOM, fstrm->fconn->conn);
+	}
+	else if (h1m->state == H1_MSG_DATA && (h1m->flags & H1_MF_XFER_LEN) && h1m->curr_len == 0) {
+		fstrm->flags |= FCGI_SF_APPEND_EOM;
+		TRACE_STATE("add append_eom", FCGI_EV_RSP_DATA, fstrm->fconn->conn);
+	}
 	TRACE_LEAVE(FCGI_EV_RSP_DATA|FCGI_EV_RSP_BODY, fstrm->fconn->conn, fstrm,, (size_t[]){ret});
 	return ret;
 }
@@ -3209,10 +3218,14 @@
 				size_t max)
 {
 	TRACE_ENTER(FCGI_EV_RSP_DATA, fstrm->fconn->conn, fstrm,, (size_t[]){max});
-	if (max < sizeof(struct htx_blk) + 1 || !htx_add_endof(htx, HTX_BLK_EOM))
+	if (max < sizeof(struct htx_blk) + 1 || !htx_add_endof(htx, HTX_BLK_EOM)) {
+		fstrm->flags |= FCGI_SF_APPEND_EOM;
+		TRACE_STATE("leaving on append_eom", FCGI_EV_RSP_DATA, fstrm->fconn->conn);
 		return 0;
+	}
 
 	h1m->state = H1_MSG_DONE;
+	fstrm->flags &= ~FCGI_SF_APPEND_EOM;
 	TRACE_STATE("end of response", FCGI_EV_RSP_DATA|FCGI_EV_RSP_EOM, fstrm->fconn->conn, fstrm);
 	TRACE_LEAVE(FCGI_EV_RSP_DATA, fstrm->fconn->conn, fstrm);
 	return (sizeof(struct htx_blk) + 1);
@@ -3780,7 +3793,7 @@
 	else
 		TRACE_STATE("fstrm rxbuf not allocated", FCGI_EV_STRM_RECV|FCGI_EV_FSTRM_BLK, fconn->conn, fstrm);
 
-	if (b_data(&fstrm->rxbuf))
+	if (b_data(&fstrm->rxbuf) || (fstrm->flags & FCGI_SF_APPEND_EOM))
 		cs->flags |= (CS_FL_RCV_MORE | CS_FL_WANT_ROOM);
 	else {
 		cs->flags &= ~(CS_FL_RCV_MORE | CS_FL_WANT_ROOM);
