summaryrefslogtreecommitdiff
path: root/Zend/zend_language_scanner.c
diff options
context:
space:
mode:
Diffstat (limited to 'Zend/zend_language_scanner.c')
-rw-r--r--Zend/zend_language_scanner.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/Zend/zend_language_scanner.c b/Zend/zend_language_scanner.c
index 712c592946..79054758e6 100644
--- a/Zend/zend_language_scanner.c
+++ b/Zend/zend_language_scanner.c
@@ -301,6 +301,7 @@ ZEND_API int open_file_for_scanning(zend_file_handle *file_handle TSRMLS_DC)
CG(start_lineno) = 0;
} else {
CG(zend_lineno) = 1;
+ CG(shebang_len) = 0;
}
CG(increment_lineno) = 0;
@@ -450,7 +451,7 @@ ZEND_API int zend_prepare_string_for_scanning(zval *str, char *filename TSRMLS_D
ZEND_API size_t zend_get_scanned_file_offset(TSRMLS_D)
{
- size_t offset = SCNG(yy_cursor) - SCNG(yy_start);
+ size_t offset = (SCNG(yy_cursor) - SCNG(yy_start)) + CG(shebang_len);
#ifdef ZEND_MULTIBYTE
if (SCNG(input_filter)) {
size_t original_offset = offset, length = 0; do {
@@ -3514,7 +3515,7 @@ yy245:
++YYCURSOR;
YYDEBUG(246, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1291 "Zend/zend_language_scanner.l"
+#line 1292 "Zend/zend_language_scanner.l"
{
return T_SR_EQUAL;
}