]> granicus.if.org Git - php/commitdiff
No Content-Type header if MIME type is unknown
authorMark Seuffert <markseu@users.noreply.github.com>
Wed, 4 Apr 2018 22:56:48 +0000 (00:56 +0200)
committerNikita Popov <nikita.ppv@gmail.com>
Sat, 14 Apr 2018 11:08:53 +0000 (13:08 +0200)
sapi/cli/php_cli_server.c

index 6053ee9340fcaa3ef6d60edb7c8ff7c04ed65b5c..34cbf305eacd0f9d34f613041023f83fcdf49232 100644 (file)
@@ -2031,9 +2031,6 @@ static int php_cli_server_begin_send_static(php_cli_server *server, php_cli_serv
                php_cli_server_chunk *chunk;
                smart_str buffer = { 0 };
                const char *mime_type = get_mime_type(server, client->request.ext, client->request.ext_len);
-               if (!mime_type) {
-                       mime_type = "application/octet-stream";
-               }
 
                append_http_status_line(&buffer, client->request.protocol_version, status, 1);
                if (!buffer.s) {
@@ -2042,12 +2039,14 @@ static int php_cli_server_begin_send_static(php_cli_server *server, php_cli_serv
                        return FAILURE;
                }
                append_essential_headers(&buffer, client, 1);
-               smart_str_appendl_ex(&buffer, "Content-Type: ", sizeof("Content-Type: ") - 1, 1);
-               smart_str_appends_ex(&buffer, mime_type, 1);
-               if (strncmp(mime_type, "text/", 5) == 0) {
-                       smart_str_appends_ex(&buffer, "; charset=UTF-8", 1);
+               if (mime_type) {
+                       smart_str_appendl_ex(&buffer, "Content-Type: ", sizeof("Content-Type: ") - 1, 1);
+                       smart_str_appends_ex(&buffer, mime_type, 1);
+                       if (strncmp(mime_type, "text/", 5) == 0) {
+                               smart_str_appends_ex(&buffer, "; charset=UTF-8", 1);
+                       }
+                       smart_str_appendl_ex(&buffer, "\r\n", 2, 1);
                }
-               smart_str_appendl_ex(&buffer, "\r\n", 2, 1);
                smart_str_appends_ex(&buffer, "Content-Length: ", 1);
                smart_str_append_unsigned_ex(&buffer, client->request.sb.st_size, 1);
                smart_str_appendl_ex(&buffer, "\r\n", 2, 1);