From ab5295fadb3911bcb5f6a9b1c6addf06d10b3ea4 Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Wed, 2 Sep 2020 09:09:41 +0200 Subject: add patch for 8.0.0beta3 from https://github.com/nikic/php-ast/pull/174 --- 174.patch | 38 ++++++++++++++++++++++++++++++++++++++ php-ast.spec | 10 +++++++++- 2 files changed, 47 insertions(+), 1 deletion(-) create mode 100644 174.patch diff --git a/174.patch b/174.patch new file mode 100644 index 0000000..9c391bf --- /dev/null +++ b/174.patch @@ -0,0 +1,38 @@ +From 1c0d5b08852e1fd69ad7110f4cae53ecac26de3c Mon Sep 17 00:00:00 2001 +From: Remi Collet +Date: Wed, 2 Sep 2020 09:01:23 +0200 +Subject: [PATCH] fix for 8.0.0beta3 + +--- + ast.c | 17 ++++++++--------- + 1 file changed, 8 insertions(+), 9 deletions(-) + +diff --git a/ast.c b/ast.c +index eeb6b5a..2004d7d 100644 +--- a/ast.c ++++ b/ast.c +@@ -329,16 +329,15 @@ static zend_ast *get_ast(zend_string *code, zend_arena **ast_arena, char *filena + CG(in_compilation) = 1; + + zend_save_lexical_state(&original_lex_state); +- if (zend_prepare_string_for_scanning(&code_zv, filename) == SUCCESS) { ++ zend_prepare_string_for_scanning(&code_zv, filename); ++ CG(ast) = NULL; ++ CG(ast_arena) = zend_arena_create(1024 * 32); ++ LANG_SCNG(yy_state) = yycINITIAL; ++ ++ if (zendparse() != 0) { ++ zend_ast_destroy(CG(ast)); ++ zend_arena_destroy(CG(ast_arena)); + CG(ast) = NULL; +- CG(ast_arena) = zend_arena_create(1024 * 32); +- LANG_SCNG(yy_state) = yycINITIAL; +- +- if (zendparse() != 0) { +- zend_ast_destroy(CG(ast)); +- zend_arena_destroy(CG(ast_arena)); +- CG(ast) = NULL; +- } + } + + /* restore_lexical_state changes CG(ast) and CG(ast_arena) */ diff --git a/php-ast.spec b/php-ast.spec index b7a5ac8..492c092 100644 --- a/php-ast.spec +++ b/php-ast.spec @@ -24,7 +24,7 @@ Version: 1.0.8 %if 0%{?gh_date:1} Release: 0.6.%{gh_date}git%{gh_short}%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}} %else -Release: 1%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}} +Release: 2%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}} %endif License: BSD URL: https://github.com/%{gh_owner}/%{gh_project} @@ -34,6 +34,8 @@ Source0: https://github.com/%{gh_owner}/%{gh_project}/archive/%{gh_commit} Source0: http://pecl.php.net/get/%{pecl_name}-%{version}%{?prever}.tgz %endif +Patch0: https://patch-diff.githubusercontent.com/raw/nikic/php-ast/pull/174.patch + BuildRequires: %{?dtsprefix}gcc BuildRequires: %{?scl_prefix}php-devel > 7 BuildRequires: %{?scl_prefix}php-pear @@ -103,6 +105,8 @@ sed -e 's/role="test"/role="src"/' \ -i package.xml cd NTS +%patch0 -p1 -b .pr174 + # Sanity check, really often broken extver=$(sed -n '/#define PHP_AST_VERSION/{s/.* "//;s/".*$//;p}' php_ast.h) if test "x${extver}" != "x%{version}%{?gh_date:-dev}"; then @@ -231,6 +235,10 @@ fi %changelog +* Wed Sep 2 2020 Remi Collet - 1.0.8-2 +- add patch for 8.0.0beta3 from + https://github.com/nikic/php-ast/pull/174 + * Thu Aug 6 2020 Remi Collet - 1.0.8-1 - update to 1.0.8 -- cgit