com php-src: fix #70189 (SAPI sends empty Content-Type when default_mimetype is empty): main/SAPI.c
| From: | Joe Watkins | Date: | Sun, 27 Mar 2016 05:50:11 +0000 |
| Subject: | com php-src: fix #70189 (SAPI sends empty Content-Type when default_mimetype is empty): main/SAPI.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-91495@lists.php.net to get a copy of this message | ||
Commit: 28f66763a436066d51b21dcf9d6ac3f5a0b33df7
Author: Joe Watkins <krakjoe@php.net> Sun, 27 Mar 2016 06:50:11 +0100
Parents: 32df2210d7c06c04216e079d28614e36ac87c325
Branches: master
Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=28f66763a436066d51b21dcf9d6ac3f5a0b33df7
Log:
fix #70189 (SAPI sends empty Content-Type when default_mimetype is empty)
Bugs:
https://bugs.php.net/70189
Changed paths:
M main/SAPI.c
Diff:
diff --git a/main/SAPI..c b/main/SAPI.c
index 9781f18..496bbfb 100644
--- a/main/SAPI.c
+++ b/main/SAPI.c
@@ -856,15 +856,24 @@ SAPI_API int sapi_send_headers(void)
* in case of an error situation.
*/
if (SG(sapi_headers).send_default_content_type && sapi_module.send_headers) {
- sapi_header_struct default_header;
- uint len;
-
- SG(sapi_headers).mimetype = get_default_content_type(0, &len);
- default_header..header_len = sizeof("Content-type: ") - 1 + len;
- default_header..header = emalloc(default_header.header_len + 1);
- memcpy(default_header.header, "Content-type: ", sizeof("Content-type: ") -
1);
- memcpy(default_header.header + sizeof("Content-type: ") - 1, SG(sapi_headers).mimetype,
len + 1);
- sapi_header_add_op(SAPI_HEADER_ADD, &default_header);
+ uint len = 0;
+ char *default_mimetype = get_default_content_type(0, &len);
+
+ if (default_mimetype && len) {
+ sapi_header_struct default_header;
+
+ SG(sapi_headers).mimetype = default_mimetype;
+
+ default_header.header_len = sizeof("Content-type: ") - 1 + len;
+ default_header.header = emalloc(default_header.header_len + 1);
+
+ memcpy(default_header.header, "Content-type: ", sizeof("Content-type: ") -
1);
+ memcpy(default_header.header + sizeof("Content-type: ") - 1,
SG(sapi_headers).mimetype, len + 1);
+
+ sapi_header_add_op(SAPI_HEADER_ADD, &default_header);
+ } else {
+ efree(default_mimetype);
+ }
SG(sapi_headers).send_default_content_type = 0;
}