From: Greg Beaver Date: Sat, 29 Dec 2007 02:01:12 +0000 (+0000) Subject: fix index/custom 404 page X-Git-Tag: RELEASE_2_0_0a1~1082 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=3dcee1c8c7bdcc099dd458a1f841169b03147e0e;p=php fix index/custom 404 page --- diff --git a/ext/phar/phar_object.c b/ext/phar/phar_object.c index 3d5b45d53b..7357b9b522 100755 --- a/ext/phar/phar_object.c +++ b/ext/phar/phar_object.c @@ -103,7 +103,11 @@ static int phar_file_action(phar_entry_data *phar, char *mime_type, int code, ch switch (code) { case PHAR_MIME_PHPS: /* highlight source */ - spprintf(&name, 4096, "phar://%s%s", arch, entry); + if (entry[0] == '/') { + name_len = spprintf(&name, 4096, "phar://%s%s", arch, entry); + } else { + name_len = spprintf(&name, 4096, "phar://%s/%s", arch, entry); + } php_get_highlight_struct(&syntax_highlighter_ini); if (highlight_file(name, &syntax_highlighter_ini TSRMLS_CC) == FAILURE) { @@ -158,7 +162,11 @@ static int phar_file_action(phar_entry_data *phar, char *mime_type, int code, ch return PHAR_MIME_OTHER; case PHAR_MIME_PHP: phar_entry_delref(phar TSRMLS_CC); - name_len = spprintf(&name, 4096, "phar://%s%s", arch, entry); + if (entry[0] == '/') { + name_len = spprintf(&name, 4096, "phar://%s%s", arch, entry); + } else { + name_len = spprintf(&name, 4096, "phar://%s/%s", arch, entry); + } ret = php_stream_open_for_zend_ex(name, &file_handle, ENFORCE_SAFE_MODE|USE_PATH|STREAM_OPEN_FOR_INCLUDE TSRMLS_CC);