summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikita Popov <nikita.ppv@gmail.com>2020-12-16 10:20:35 +0100
committerNikita Popov <nikita.ppv@gmail.com>2020-12-16 10:20:43 +0100
commitf6bd3dfdbcc0d8f4f7733560034e735865083c1a (patch)
treeb65344174bd9f5d9af99d3277786063314738a64
parente586a35fc7c37cdd130ccd9364285748397fb390 (diff)
parent118ff03335d67c19817ff83d89e634fcd39275ff (diff)
downloadphp-git-f6bd3dfdbcc0d8f4f7733560034e735865083c1a.tar.gz
Merge branch 'PHP-7.4' into PHP-8.0
* PHP-7.4: Fix bug #80523
-rw-r--r--NEWS2
-rw-r--r--Zend/zend_language_scanner.l6
2 files changed, 5 insertions, 3 deletions
diff --git a/NEWS b/NEWS
index e1dc7aefcc..cb8af57a7b 100644
--- a/NEWS
+++ b/NEWS
@@ -2,6 +2,8 @@ PHP NEWS
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
?? ??? ????, PHP 8.0.2RC1
+- Core:
+ . Fixed bug #80523 (bogus parse error on >4GB source code). (Nikita)
07 Jan 2021, PHP 8.0.1
diff --git a/Zend/zend_language_scanner.l b/Zend/zend_language_scanner.l
index b9e6127059..7e60f5cf05 100644
--- a/Zend/zend_language_scanner.l
+++ b/Zend/zend_language_scanner.l
@@ -177,7 +177,7 @@ static void yy_pop_state(void)
zend_stack_del_top(&SCNG(state_stack));
}
-static void yy_scan_buffer(char *str, unsigned int len)
+static void yy_scan_buffer(char *str, size_t len)
{
YYCURSOR = (YYCTYPE*)str;
YYLIMIT = YYCURSOR + len;
@@ -571,7 +571,7 @@ ZEND_API zend_result open_file_for_scanning(zend_file_handle *file_handle)
}
}
SCNG(yy_start) = (unsigned char *)buf;
- yy_scan_buffer(buf, (unsigned int)size);
+ yy_scan_buffer(buf, size);
} else {
zend_error_noreturn(E_COMPILE_ERROR, "zend_stream_mmap() failed");
}
@@ -772,7 +772,7 @@ ZEND_API void zend_prepare_string_for_scanning(zval *str, const char *filename)
}
}
- yy_scan_buffer(buf, (unsigned int)size);
+ yy_scan_buffer(buf, size);
new_compiled_filename = zend_string_init(filename, strlen(filename), 0);
zend_set_compiled_filename(new_compiled_filename);