Browse Source

Fix for mg_send_http_redirect

bel2125 3 years ago
parent
commit
1090153ce1
1 changed files with 3 additions and 5 deletions
  1. 3 5
      src/civetweb.c

+ 3 - 5
src/civetweb.c

@@ -4648,10 +4648,10 @@ mg_send_http_redirect(struct mg_connection *conn,
 	 *   307  | temporary | always keep method  | HTTP/1.1
 	 *   307  | temporary | always keep method  | HTTP/1.1
 	 *   308  | permanent | always keep method  | HTTP/1.1
 	 *   308  | permanent | always keep method  | HTTP/1.1
 	 */
 	 */
-	size_t content_len = 0;
 
 
 #if defined(MG_SEND_REDIRECT_BODY)
 #if defined(MG_SEND_REDIRECT_BODY)
 	char redirect_body[MG_BUF_LEN];
 	char redirect_body[MG_BUF_LEN];
+	size_t content_len = 0;
 	char content_len_text[32];
 	char content_len_text[32];
 #endif
 #endif
 
 
@@ -4706,11 +4706,10 @@ mg_send_http_redirect(struct mg_connection *conn,
 	    target_url,
 	    target_url,
 	    target_url);
 	    target_url);
 	content_len = strlen(reply);
 	content_len = strlen(reply);
+	sprintf(content_len_text, "%lu", (unsigned long)content_len);
 #endif
 #endif
 
 
-	/* Do not send a cache header, there are suitable defaults.
-	 * Thus, send_(no)_cache_header is not called here.xxxxxx
-	 */
+	/* Send all required headers */
 	mg_response_header_start(conn, redirect_code);
 	mg_response_header_start(conn, redirect_code);
 	mg_response_header_add(conn, "Location", target_url, -1);
 	mg_response_header_add(conn, "Location", target_url, -1);
 	if ((redirect_code == 301) || (redirect_code == 308)) {
 	if ((redirect_code == 301) || (redirect_code == 308)) {
@@ -4724,7 +4723,6 @@ mg_send_http_redirect(struct mg_connection *conn,
 	send_cors_header(conn);
 	send_cors_header(conn);
 #if defined(MG_SEND_REDIRECT_BODY)
 #if defined(MG_SEND_REDIRECT_BODY)
 	mg_response_header_add(conn, "Content-Type", "text/html", -1);
 	mg_response_header_add(conn, "Content-Type", "text/html", -1);
-	sprintf(content_len_text, "%lu", (unsigned long)content_len_text);
 	mg_response_header_add(conn, "Content-Length", content_len_text, -1);
 	mg_response_header_add(conn, "Content-Length", content_len_text, -1);
 #else
 #else
 	mg_response_header_add(conn, "Content-Length", "0", 1);
 	mg_response_header_add(conn, "Content-Length", "0", 1);