diff options
| author | Remi Collet <remi@remirepo.net> | 2019-08-28 11:07:10 +0200 | 
|---|---|---|
| committer | Remi Collet <remi@remirepo.net> | 2019-08-28 11:07:10 +0200 | 
| commit | 0760a112f4ab67a829862bb3eb0cad9e653cbc42 (patch) | |
| tree | 4a92e539527a72e4e258cae8aa3eba113771f31c | |
| parent | 6cb040c68d0e261d71298c8f87afbcceb34e65eb (diff) | |
- Update to 7.2.22 - http://www.php.net/releases/7_2_22.php
- fix generator incorrectly reports non-releasable $this as GC child
  https://bugs.php.net/78412
| -rw-r--r-- | failed.txt | 4 | ||||
| -rw-r--r-- | php-bug78412.patch | 37 | ||||
| -rw-r--r-- | php72.spec | 9 | 
3 files changed, 46 insertions, 4 deletions
| @@ -1,4 +1,4 @@ -===== 7.2.22RC1 (2019-08-15) +===== 7.2.22 (2019-08-29)  $ grep -r 'Tests failed' /var/lib/mock/{fc,el}*/build.log @@ -6,8 +6,6 @@ $ grep -r 'Tests failed' /var/lib/mock/{fc,el}*/build.log  /var/lib/mock/el6x/build.log:Tests failed    :     0  /var/lib/mock/el7x/build.log:Tests failed    :     0  /var/lib/mock/el8x73/build.logTests failed    :   16 -/var/lib/mock/fc28i/build.log:Tests failed    :    0 -/var/lib/mock/fc28x/build.log:Tests failed    :    0  /var/lib/mock/fc29i/build.log:Tests failed    :    1  /var/lib/mock/fc29x/build.log:Tests failed    :    1 diff --git a/php-bug78412.patch b/php-bug78412.patch new file mode 100644 index 0000000..f4f8b4a --- /dev/null +++ b/php-bug78412.patch @@ -0,0 +1,37 @@ +From fcabe7e5e44067319f9c4123d71a7cea6a823af4 Mon Sep 17 00:00:00 2001 +From: Nikita Popov <nikita.ppv@gmail.com> +Date: Wed, 14 Aug 2019 17:48:57 +0200 +Subject: [PATCH] Fixed bug #78412 + +$this should only be included in the generator GC buffer, if it +will be released on destruction. +--- + NEWS                   | 4 ++++ + Zend/zend_generators.c | 4 ++-- + 2 files changed, 6 insertions(+), 2 deletions(-) + +diff --git a/Zend/zend_generators.c b/Zend/zend_generators.c +index 666a12f..042ddbc 100644 +--- a/Zend/zend_generators.c ++++ b/Zend/zend_generators.c +@@ -271,7 +271,7 @@ static uint32_t calc_gc_buffer_size(zend_generator *generator) /* {{{ */ + 		if (EX_CALL_INFO() & ZEND_CALL_FREE_EXTRA_ARGS) { + 			size += EX_NUM_ARGS() - op_array->num_args; + 		} +-		size += Z_TYPE(execute_data->This) == IS_OBJECT; /* $this */ ++		size += (EX_CALL_INFO() & ZEND_CALL_RELEASE_THIS) != 0; /* $this */ + 		size += (EX_CALL_INFO() & ZEND_CALL_CLOSURE) != 0; /* Closure object */ +  + 		/* Live vars */ +@@ -352,7 +352,7 @@ static HashTable *zend_generator_get_gc(zval *object, zval **table, int *n) /* { + 		} + 	} +  +-	if (Z_TYPE(execute_data->This) == IS_OBJECT) { ++	if (EX_CALL_INFO() & ZEND_CALL_RELEASE_THIS) { + 		ZVAL_OBJ(gc_buffer++, Z_OBJ(execute_data->This)); + 	} + 	if (EX_CALL_INFO() & ZEND_CALL_CLOSURE) { +--  +2.1.4 + @@ -117,7 +117,7 @@  %endif  %global upver        7.2.22 -%global rcver        RC1 +#global rcver        RC1  Summary: PHP scripting language for creating dynamic web sites  Name: php @@ -182,6 +182,7 @@ Patch49: php-7.2.16-pdooci.patch  Patch91: php-7.2.0-oci8conf.patch  # Upstream fixes (100+) +Patch100: php-bug78412.patch  # Security fixes (200+) @@ -1107,6 +1108,7 @@ low-level PHP extension for the libsodium cryptographic library.  %patch91 -p1 -b .remi-oci8  # upstream patches +%patch100 -p1 -b .78412  # security patches @@ -2198,6 +2200,11 @@ fi  %changelog +* Wed Aug 28 2019 Remi Collet <remi@remirepo.net> - 7.2.22-1 +- Update to 7.2.22 - http://www.php.net/releases/7_2_22.php +- fix generator incorrectly reports non-releasable $this as GC child +  https://bugs.php.net/78412 +  * Mon Aug 19 2019 Remi Collet <remi@remirepo.net> - 7.2.22~RC1-1  - update to 7.2.22RC1 | 
