BUG/MINOR: cache: Check the return value of http_replace_res_status

Send the full body if the status `304` cannot be applied. This should be the
most graceful failure.

Specific for 2.3, no backport needed.
diff --git a/src/cache.c b/src/cache.c
index a5e26c3..c8350ff 100644
--- a/src/cache.c
+++ b/src/cache.c
@@ -935,8 +935,12 @@
 
 		/* In case of a conditional request, we might want to send a
 		 * "304 Not Modified" response instead of the stored data. */
-		if (appctx->ctx.cache.send_notmodified)
-			http_replace_res_status(res_htx, ist("304"), ist("Not Modified"));
+		if (appctx->ctx.cache.send_notmodified) {
+			if (!http_replace_res_status(res_htx, ist("304"), ist("Not Modified"))) {
+				/* If replacing the status code fails we need to send the full response. */
+				appctx->ctx.cache.send_notmodified = 0;
+			}
+		}
 
 		/* Skip response body for HEAD requests or in case of "304 Not
 		 * Modified" response. */