From dcc919c44917f01d03e362a8ba34ebaed9e0180b Mon Sep 17 00:00:00 2001 From: Greg Beaver Date: Tue, 30 Sep 2008 02:40:17 +0000 Subject: [PATCH] fix Bug #46194: SIGSEGV when requested file is not found --- ext/phar/phar.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ext/phar/phar.c b/ext/phar/phar.c index 0065367bb92..7ae4af4f265 100644 --- a/ext/phar/phar.c +++ b/ext/phar/phar.c @@ -3291,6 +3291,9 @@ static zend_op_array *phar_compile_file(zend_file_handle *file_handle, int type int failed; phar_archive_data *phar; + if (!file_handle || !file_handle->filename) { + return phar_orig_compile_file(file_handle, type TSRMLS_CC); + } if (strstr(file_handle->filename, ".phar") && !strstr(file_handle->filename, "://")) { if (SUCCESS == phar_open_from_filename(file_handle->filename, strlen(file_handle->filename), NULL, 0, 0, &phar, NULL TSRMLS_CC)) { if (phar->is_zip || phar->is_tar) {