summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPierre Joye <pajoye@php.net>2010-11-17 16:46:19 +0000
committerPierre Joye <pajoye@php.net>2010-11-17 16:46:19 +0000
commit7b27de9f0bcadc8f6a1326bd04483515e9dcc794 (patch)
treeea5f9f94c80aaa28881ffe52fa0955fce26a8b48
parentd225fe4e58ceb39d429f218f0c05a2e7d518b92d (diff)
downloadphp-git-7b27de9f0bcadc8f6a1326bd04483515e9dcc794.tar.gz
- NULL deref fix, patch by Gustavo
-rw-r--r--Zend/zend_language_scanner.l4
1 files changed, 4 insertions, 0 deletions
diff --git a/Zend/zend_language_scanner.l b/Zend/zend_language_scanner.l
index 86949a22f1..481a338b45 100644
--- a/Zend/zend_language_scanner.l
+++ b/Zend/zend_language_scanner.l
@@ -284,6 +284,10 @@ ZEND_API int open_file_for_scanning(zend_file_handle *file_handle TSRMLS_DC)
SCNG(script_filtered_size) = SCNG(script_org_size);
} else {
SCNG(input_filter)(&SCNG(script_filtered), &SCNG(script_filtered_size), SCNG(script_org), SCNG(script_org_size) TSRMLS_CC);
+ if (SCNG(script_filtered) == NULL) {
+ zend_error_noreturn(E_COMPILE_ERROR, "Could not convert the script from the detected "
+ "encoding \"%s\" to a compatible encoding", LANG_SCNG(script_encoding)->name);
+ }
}
SCNG(yy_start) = SCNG(script_filtered) - offset;
yy_scan_buffer((char *)SCNG(script_filtered), SCNG(script_filtered_size) TSRMLS_CC);