diff options
-rw-r--r-- | failed.txt | 2 | ||||
-rw-r--r-- | php-upstream.patch | 130 | ||||
-rw-r--r-- | php.spec | 13 |
3 files changed, 7 insertions, 138 deletions
@@ -1,4 +1,4 @@ -===== 8.1.2 (2022-01-20) +===== 8.1.3RC1 (2022-02-03) $ grep -ar 'Tests failed' /var/lib/mock/*/build.log diff --git a/php-upstream.patch b/php-upstream.patch deleted file mode 100644 index 0f3ebd4..0000000 --- a/php-upstream.patch +++ /dev/null @@ -1,130 +0,0 @@ -From e31c54d02592caa31d6a59aaefeaa96aab2d7b27 Mon Sep 17 00:00:00 2001 -From: Remi Collet <remi@remirepo.net> -Date: Fri, 7 Jan 2022 15:04:36 +0100 -Subject: [PATCH] fix GH-7899 Regression in unpack for negative int value - ---- - NEWS | 3 +++ - ext/standard/pack.c | 11 +++++++++-- - ext/standard/tests/strings/pack64.phpt | 21 +++++++++++++++++++++ - 3 files changed, 33 insertions(+), 2 deletions(-) - -diff --git a/ext/standard/pack.c b/ext/standard/pack.c -index 46856874bc2a..8736d291fb24 100644 ---- a/ext/standard/pack.c -+++ b/ext/standard/pack.c -@@ -62,6 +62,7 @@ typedef ZEND_SET_ALIGNED(1, uint16_t unaligned_uint16_t); - typedef ZEND_SET_ALIGNED(1, uint32_t unaligned_uint32_t); - typedef ZEND_SET_ALIGNED(1, uint64_t unaligned_uint64_t); - typedef ZEND_SET_ALIGNED(1, unsigned int unaligned_uint); -+typedef ZEND_SET_ALIGNED(1, int unaligned_int); - - /* Mapping of byte from char (8bit) to long for machine endian */ - static int byte_map[1]; -@@ -1043,8 +1044,14 @@ PHP_FUNCTION(unpack) - - case 'i': /* signed integer, machine size, machine endian */ - case 'I': { /* unsigned integer, machine size, machine endian */ -- unsigned int x = *((unaligned_uint*) &input[inputpos]); -- zend_long v = (type == 'i') ? (int) x : x; -+ zend_long v; -+ if (type == 'i') { -+ int x = *((unaligned_int*) &input[inputpos]); -+ v = x; -+ } else { -+ unsigned int x = *((unaligned_uint*) &input[inputpos]); -+ v = x; -+ } - - ZVAL_LONG(&val, v); - zend_symtable_update(Z_ARRVAL_P(return_value), real_name, &val); -diff --git a/ext/standard/tests/strings/pack64.phpt b/ext/standard/tests/strings/pack64.phpt -index 753821f65429..84e69008284d 100644 ---- a/ext/standard/tests/strings/pack64.phpt -+++ b/ext/standard/tests/strings/pack64.phpt -@@ -31,6 +31,11 @@ print_r(unpack("q", pack("q", 0))); - print_r(unpack("q", pack("q", 0x8000000000000002))); - print_r(unpack("q", pack("q", -1))); - print_r(unpack("q", pack("q", 0x8000000000000000))); -+ -+print_r(unpack("i", pack("i", 2147483647))); // Max int32 -+print_r(unpack("i", pack("i", -2147483647))); -+print_r(unpack("i", pack("i", -2147483648))); // Min int32 -+print_r(unpack("I", pack("I", 4294967295))); // Max uint32 - ?> - --EXPECT-- - Array -@@ -113,3 +118,19 @@ Array - ( - [1] => -9223372036854775808 - ) -+Array -+( -+ [1] => 2147483647 -+) -+Array -+( -+ [1] => -2147483647 -+) -+Array -+( -+ [1] => -2147483648 -+) -+Array -+( -+ [1] => 4294967295 -+) -From cdfc4d3596d9f983b7395ee11641cbf37b77b46e Mon Sep 17 00:00:00 2001 -From: Remi Collet <remi@remirepo.net> -Date: Mon, 17 Jan 2022 10:23:15 +0100 -Subject: [PATCH] Fix GH-7883 don't close not open file handle don't create a - stream if file is not open - ---- - NEWS | 1 + - Zend/zend_stream.c | 5 ++++- - main/php_ini.c | 7 ++++--- - 3 files changed, 9 insertions(+), 4 deletions(-) - -diff --git a/Zend/zend_stream.c b/Zend/zend_stream.c -index aadc62558e60..ae2c734b09b4 100644 ---- a/Zend/zend_stream.c -+++ b/Zend/zend_stream.c -@@ -214,7 +214,10 @@ static void zend_file_handle_dtor(zend_file_handle *fh) /* {{{ */ - { - switch (fh->type) { - case ZEND_HANDLE_FP: -- fclose(fh->handle.fp); -+ if (fh->handle.fp) { -+ fclose(fh->handle.fp); -+ fh->handle.fp = NULL; -+ } - break; - case ZEND_HANDLE_STREAM: - if (fh->handle.stream.closer && fh->handle.stream.handle) { -diff --git a/main/php_ini.c b/main/php_ini.c -index fd6f36648821..136942896da4 100644 ---- a/main/php_ini.c -+++ b/main/php_ini.c -@@ -686,8 +686,9 @@ int php_init_config(void) - if (VCWD_STAT(ini_file, &sb) == 0) { - if (S_ISREG(sb.st_mode)) { - zend_file_handle fh; -- zend_stream_init_fp(&fh, VCWD_FOPEN(ini_file, "r"), ini_file); -- if (fh.handle.fp) { -+ FILE *file = VCWD_FOPEN(ini_file, "r"); -+ if (file) { -+ zend_stream_init_fp(&fh, file, ini_file); - if (zend_parse_ini_file(&fh, 1, ZEND_INI_SCANNER_NORMAL, (zend_ini_parser_cb_t) php_ini_parser_cb, &configuration_hash) == SUCCESS) { - /* Here, add it to the list of ini files read */ - l = (int)strlen(ini_file); -@@ -695,8 +696,8 @@ int php_init_config(void) - p = estrndup(ini_file, l); - zend_llist_add_element(&scanned_ini_list, &p); - } -+ zend_destroy_file_handle(&fh); - } -- zend_destroy_file_handle(&fh); - } - } - free(namelist[i]); @@ -126,9 +126,9 @@ #global gh_date 20210809 %global gh_owner php %global gh_project php-src -%global upver 8.1.2 -#global rcver RC1 -#global lower RC1 +%global upver 8.1.3 +%global rcver RC1 +%global lower RC1 Summary: PHP scripting language for creating dynamic web sites Name: %{?scl_prefix}php @@ -196,9 +196,6 @@ Patch47: php-8.1.0-phpinfo.patch Patch91: php-7.2.0-oci8conf.patch # Upstream fixes (100+) -# Fixed bug GH-7899 Regression in unpack for negative int value -# Fixed bug GH-7883 Segfault when INI file is not readable -Patch100: php-upstream.patch # Security fixes (200+) @@ -972,7 +969,6 @@ sed -e 's/php-devel/%{?scl_prefix}php-devel/' -i scripts/phpize.in %patch91 -p1 -b .remi-oci8 # upstream patches -%patch100 -p1 -b .up # security patches @@ -1849,6 +1845,9 @@ fi %changelog +* Thu Feb 3 2022 Remi Collet <remi@remirepo.net> - 8.1.3~RC1-1 +- update to 8.1.3RC1 + * Wed Jan 19 2022 Remi Collet <remi@remirepo.net> - 8.1.2-1 - Update to 8.1.2 - http://www.php.net/releases/8_1_2.php - Fix GH-7899 Regression in unpack for negative int value |