From: Nikita Popov Date: Sat, 18 Feb 2012 13:39:13 +0000 (+0000) Subject: Fix headers generated by phar X-Git-Tag: php-5.5.0alpha1~523 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=032bbc3164c0c8302046e3a9029234528e9ad324;p=php Fix headers generated by phar sapi_header_line.line_len is the length without null terminator, so one has to take sizeof - 1. This fixes some test failures as the NUL bytes were causing warnings. Needs to be merged to 5.4. --- diff --git a/ext/phar/phar_object.c b/ext/phar/phar_object.c index 782acfa7f8..de9fffc115 100644 --- a/ext/phar/phar_object.c +++ b/ext/phar/phar_object.c @@ -428,7 +428,7 @@ static void phar_do_403(char *entry, int entry_len TSRMLS_DC) /* {{{ */ sapi_header_line ctr = {0}; ctr.response_code = 403; - ctr.line_len = sizeof("HTTP/1.0 403 Access Denied"); + ctr.line_len = sizeof("HTTP/1.0 403 Access Denied")-1; ctr.line = "HTTP/1.0 403 Access Denied"; sapi_header_op(SAPI_HEADER_REPLACE, &ctr TSRMLS_CC); sapi_send_headers(TSRMLS_C); @@ -453,7 +453,7 @@ static void phar_do_404(phar_archive_data *phar, char *fname, int fname_len, cha } ctr.response_code = 404; - ctr.line_len = sizeof("HTTP/1.0 404 Not Found")+1; + ctr.line_len = sizeof("HTTP/1.0 404 Not Found")-1; ctr.line = "HTTP/1.0 404 Not Found"; sapi_header_op(SAPI_HEADER_REPLACE, &ctr TSRMLS_CC); sapi_send_headers(TSRMLS_C); @@ -893,7 +893,7 @@ PHP_METHOD(Phar, webPhar) char *tmp = NULL, sa = '\0'; sapi_header_line ctr = {0}; ctr.response_code = 301; - ctr.line_len = sizeof("HTTP/1.1 301 Moved Permanently")+1; + ctr.line_len = sizeof("HTTP/1.1 301 Moved Permanently")-1; ctr.line = "HTTP/1.1 301 Moved Permanently"; sapi_header_op(SAPI_HEADER_REPLACE, &ctr TSRMLS_CC);