From 06ade15528fa64acd9dea92b072a985793d1dcc1 Mon Sep 17 00:00:00 2001 From: Pieter van den Ham Date: Wed, 5 Aug 2020 20:21:26 +0200 Subject: Fix #79934: CRLF-only line in heredoc causes parsing error Fixes the function `next_newline()` in zend_language_scanner.l. The function now correctly returns a newline_len of 2 for "\r\n". Closes GH-5944. --- Zend/zend_language_scanner.l | 1 + 1 file changed, 1 insertion(+) (limited to 'Zend/zend_language_scanner.l') diff --git a/Zend/zend_language_scanner.l b/Zend/zend_language_scanner.l index 041b482ab4..2c35d38ea4 100644 --- a/Zend/zend_language_scanner.l +++ b/Zend/zend_language_scanner.l @@ -1112,6 +1112,7 @@ static const char *next_newline(const char *str, const char *end, size_t *newlin for (; str < end; str++) { if (*str == '\r') { *newline_len = str + 1 < end && *(str + 1) == '\n' ? 2 : 1; + return str; } else if (*str == '\n') { *newline_len = 1; return str; -- cgit v1.2.1