]>
granicus.if.org Git - php/log
Christoph M. Becker [Tue, 5 Jan 2021 13:24:59 +0000 (14:24 +0100)]
Merge branch 'PHP-7.4' into PHP-8.0
* PHP-7.4:
Fix memory leak in Phar::webPhar() on Windows
Christoph M. Becker [Mon, 4 Jan 2021 16:08:06 +0000 (17:08 +0100)]
Fix memory leak in Phar::webPhar() on Windows
Closes GH-6574.
Nikita Popov [Tue, 5 Jan 2021 12:02:30 +0000 (13:02 +0100)]
Fix infinite recursion in unlinked_instanceof
I suspect this is only a partial fix for the issue, it's probably
possible to recurse through a more complex pathway as well.
Fixes oss-fuzz #28961.
Nikita Popov [Tue, 5 Jan 2021 09:12:43 +0000 (10:12 +0100)]
Merge branch 'PHP-7.4' into PHP-8.0
* PHP-7.4:
gdbinit: use ____print_str to print htable keys
Dylan K. Taylor [Mon, 4 Jan 2021 23:13:00 +0000 (23:13 +0000)]
gdbinit: use ____print_str to print htable keys
I noticed this problem while dumping the contents of EG(function_table),
where keys for closures start with a null byte. printf interprets this
as a zero-length string and emits nothing. This allows the key to be
rendered properly in readable form.
Closes GH-6577.
Christoph M. Becker [Mon, 4 Jan 2021 17:17:31 +0000 (18:17 +0100)]
[ci skip] Add forgotten NEWS entry (bug 80560)
George Peter Banyard [Mon, 4 Jan 2021 14:24:53 +0000 (15:24 +0100)]
Fix bug #80584: 0x and 0X are considered valid hex numbers by filter_var()
Closes GH-6573
Christoph M. Becker [Wed, 16 Dec 2020 11:35:38 +0000 (12:35 +0100)]
Fix #76929: zip-based phar does not respect phar.require_hash
Based on the patch provided by david at bamsoftware.
Closes GH-6517.
Nikita Popov [Mon, 4 Jan 2021 14:27:20 +0000 (15:27 +0100)]
Fix newly added GMP test
George Peter Banyard [Tue, 29 Dec 2020 16:50:37 +0000 (17:50 +0100)]
Fix GMP comparison object handler
gmp_cmp() doesn't return false anymore in PHP 8 but will throw
an Error if compared to a non numeric string or another type of object.
Closes GH-6553
Nikita Popov [Mon, 4 Jan 2021 13:31:42 +0000 (14:31 +0100)]
Try to fix intermittent failures of stream_server_reneg_limit.phpt on macos
Make sure the server has started up before we try to connect to it.
Nikita Popov [Mon, 4 Jan 2021 11:14:01 +0000 (12:14 +0100)]
Throw ValueError instead of TypeError for malformed GMP number
If the passed argument has correct type (string) but does not
have a well-formed value, throw ValueError instead of TypeError.
Closes GH-6572.
Christoph M. Becker [Fri, 1 Jan 2021 22:43:53 +0000 (23:43 +0100)]
SQLite3::query() cannot return null
David CARLIER [Thu, 31 Dec 2020 14:52:57 +0000 (14:52 +0000)]
Mac M1 crc32 detection support
Closes GH-6556.
Nikita Popov [Mon, 4 Jan 2021 09:55:50 +0000 (10:55 +0100)]
Merge branch 'PHP-7.4' into PHP-8.0
* PHP-7.4:
Disable non-cron travis jobs
Stanislav Malyshev [Mon, 4 Jan 2021 09:52:59 +0000 (01:52 -0800)]
Fix test name
Nikita Popov [Mon, 4 Jan 2021 09:52:37 +0000 (10:52 +0100)]
Disable non-cron travis jobs
This was already done for PHP-8.0 and master, do it for PHP-7.4
as well.
Stanislav Malyshev [Mon, 4 Jan 2021 09:47:47 +0000 (01:47 -0800)]
[ci skip] Update NEWS
Stanislav Malyshev [Mon, 4 Jan 2021 09:47:09 +0000 (01:47 -0800)]
Merge branch 'PHP-7.4' into PHP-8.0
* PHP-7.4:
[ci skip] Update NEWS
[ci skip] Fix order
[ci skip] Unpdate NEWS
Fix #77423: parse_url() will deliver a wrong host to user
Stanislav Malyshev [Mon, 4 Jan 2021 09:46:32 +0000 (01:46 -0800)]
[ci skip] Update NEWS
Stanislav Malyshev [Mon, 4 Jan 2021 09:46:11 +0000 (01:46 -0800)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
[ci skip] Fix order
Stanislav Malyshev [Mon, 4 Jan 2021 09:45:04 +0000 (01:45 -0800)]
[ci skip] Fix order
Stanislav Malyshev [Mon, 4 Jan 2021 09:44:18 +0000 (01:44 -0800)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
[ci skip] Unpdate NEWS
Stanislav Malyshev [Mon, 4 Jan 2021 09:43:45 +0000 (01:43 -0800)]
[ci skip] Unpdate NEWS
Stanislav Malyshev [Sun, 3 Jan 2021 02:55:29 +0000 (18:55 -0800)]
Fix bug #79405 - gethostbyname() silently truncates after a null byte
Christoph M. Becker [Wed, 13 May 2020 07:36:52 +0000 (09:36 +0200)]
Fix #77423: parse_url() will deliver a wrong host to user
To avoid that `parse_url()` returns an erroneous host, which would be
valid for `FILTER_VALIDATE_URL`, we make sure that only userinfo which
is valid according to RFC 3986 is treated as such.
For consistency with the existing url parsing code, we use ctype
functions, although that is not necessarily correct.
Christoph M. Becker [Thu, 31 Dec 2020 18:30:11 +0000 (19:30 +0100)]
Fix imap stubs
Closes GH-6559.
Christoph M. Becker [Sat, 2 Jan 2021 11:18:46 +0000 (12:18 +0100)]
ZipArchive methods do not return NULL
Closes GH-6563.
Stanislav Malyshev [Sat, 2 Jan 2021 05:07:15 +0000 (21:07 -0800)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Fix #77423: parse_url() will deliver a wrong host to user
Stanislav Malyshev [Sat, 2 Jan 2021 05:06:07 +0000 (21:06 -0800)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
Fix #77423: parse_url() will deliver a wrong host to user
Christoph M. Becker [Wed, 13 May 2020 07:36:52 +0000 (09:36 +0200)]
Fix #77423: parse_url() will deliver a wrong host to user
To avoid that `parse_url()` returns an erroneous host, which would be
valid for `FILTER_VALIDATE_URL`, we make sure that only userinfo which
is valid according to RFC 3986 is treated as such.
For consistency with the existing url parsing code, we use ctype
functions, although that is not necessarily correct.
Christoph M. Becker [Fri, 1 Jan 2021 16:46:40 +0000 (17:46 +0100)]
Fix parameter name
Levenshtein is about insertion, replacement and deletion.
Closes GH-6560.
Christoph M. Becker [Fri, 1 Jan 2021 16:40:25 +0000 (17:40 +0100)]
Fix build
We cannot `RETURN_THROWS()` here, since `return_value` is not defined.
Máté Kocsis [Fri, 1 Jan 2021 15:52:48 +0000 (16:52 +0100)]
Use RETURN_THROWS() in a few places
Christoph M. Becker [Thu, 31 Dec 2020 18:36:27 +0000 (19:36 +0100)]
Fix ReflectionClass::getConstants() stub
If `zval_update_constant_ex()` fails, an exception has already been
thrown, so we clarify that in the implementation as well.
Closes GH-6557.
Christoph M. Becker [Wed, 30 Dec 2020 23:30:16 +0000 (00:30 +0100)]
[ci skip] Fix pgsql constant names in UPGRADING
Máté Kocsis [Wed, 30 Dec 2020 17:26:24 +0000 (18:26 +0100)]
Fix refentry attribute replacing
George Peter Banyard [Tue, 29 Dec 2020 01:31:15 +0000 (02:31 +0100)]
Fix #80560: Strings containing only a base prefix return 0 object
Closes GH-6549.
Dmitry Stogov [Tue, 29 Dec 2020 10:20:10 +0000 (13:20 +0300)]
Initialize EX(call)->func by single instruction
Dmitry Stogov [Tue, 29 Dec 2020 10:18:56 +0000 (13:18 +0300)]
Reuse value stored in %r0 instead of immediate operand
Christoph M. Becker [Sun, 27 Dec 2020 19:29:00 +0000 (20:29 +0100)]
Fix ffi stubs
Closes GH-6543.
Máté Kocsis [Sun, 15 Nov 2020 23:23:47 +0000 (00:23 +0100)]
Fix return type of DateTimeImmutable::__set_state()
Máté Kocsis [Thu, 22 Oct 2020 08:39:18 +0000 (10:39 +0200)]
Add support for generating methodsynopses from stubs
Closes GH-6367
Christoph M. Becker [Tue, 15 Dec 2020 23:02:39 +0000 (00:02 +0100)]
Bump minimum re2c version to 0.13.7
Closes GH-6516.
Christoph M. Becker [Sun, 27 Dec 2020 18:25:23 +0000 (19:25 +0100)]
php_formatted_print() throws on failure
Closes GH-6542.
Christoph M. Becker [Sun, 27 Dec 2020 17:32:03 +0000 (18:32 +0100)]
Merge branch 'PHP-7.4' into PHP-8.0
* PHP-7.4:
Replace sort() function calls with ksort() in basic ksort test
haszi [Sun, 27 Dec 2020 16:03:41 +0000 (17:03 +0100)]
Replace sort() function calls with ksort() in basic ksort test
Closes GH-6541.
Christoph M. Becker [Sat, 26 Dec 2020 11:21:02 +0000 (12:21 +0100)]
DateTime*::getOffset() no longer returns false as of PHP 8.0.0
Cf. <https://github.com/php/doc-en/pull/282>.
Closes GH-6539.
Dmitry Stogov [Thu, 24 Dec 2020 13:58:54 +0000 (16:58 +0300)]
Eliminate redundand comparison insructions
Máté Kocsis [Thu, 24 Dec 2020 10:45:32 +0000 (11:45 +0100)]
Fix the signature of FFI::typeof() and FFI::memcmp()
Máté Kocsis [Thu, 24 Dec 2020 10:44:15 +0000 (11:44 +0100)]
Add a few other RETURN_THROWS()
Máté Kocsis [Wed, 23 Dec 2020 22:27:12 +0000 (23:27 +0100)]
Fix the signature of FFI::sizeof() and FFI::alignof()
Christopher Jones [Thu, 24 Dec 2020 06:48:39 +0000 (17:48 +1100)]
Fix PDO_OCI test
Semen Dubina [Mon, 10 Sep 2018 22:26:02 +0000 (01:26 +0300)]
Add regression test for bug #76770
Closes GH-3514.
Christoph M. Becker [Wed, 23 Dec 2020 12:52:24 +0000 (13:52 +0100)]
Merge branch 'PHP-7.4' into PHP-8.0
* PHP-7.4:
Fix #80384: limit read buffer size
Adam Seitz [Tue, 1 Dec 2020 23:40:16 +0000 (00:40 +0100)]
Fix #80384: limit read buffer size
In the case of a stream with no filters, php_stream_fill_read_buffer
only reads stream->chunk_size into the read buffer. If the stream has
filters attached, it could unnecessarily buffer a large amount of data.
With this change, php_stream_fill_read_buffer only proceeds until either
the requested size or stream->chunk_size is available in the read buffer.
Co-authored-by: Christoph M. Becker <cmbecker69@gmx.de>
Closes GH-6444.
Derick Rethans [Mon, 21 Dec 2020 10:31:41 +0000 (10:31 +0000)]
Fixed bug #80376 (last day of the month causes runway cpu usage)
Derick Rethans [Mon, 21 Dec 2020 10:30:40 +0000 (10:30 +0000)]
Fixed bug #80376 (last day of the month causes runway cpu usage)
Nikita Popov [Mon, 21 Dec 2020 09:21:08 +0000 (10:21 +0100)]
Fix bug #80537
This is an unavoidable breaking change to both the type and
parameter name.
The assertion that was supposed to prevent this was overly lax
and accepted any object type for string parameters.
Christopher Jones [Mon, 21 Dec 2020 04:46:26 +0000 (15:46 +1100)]
Description typo
Christopher Jones [Mon, 21 Dec 2020 04:15:16 +0000 (15:15 +1100)]
Bundle PECL OCI8 3.0.1
Christopher Jones [Mon, 21 Dec 2020 04:07:40 +0000 (15:07 +1100)]
Retrofit NEWS
Christoph M. Becker [Sun, 20 Dec 2020 22:07:02 +0000 (23:07 +0100)]
Revert "DateTime:: and DateTimeImmutable::getTimestamp() may return false"
This reverts commit
b67c23218950eae0a153b093dcefbe14b3b40901 .
Christoph M. Becker [Sun, 20 Dec 2020 18:32:12 +0000 (19:32 +0100)]
DateTime:: and DateTimeImmutable::getTimestamp() may return false
Christoph M. Becker [Wed, 9 Dec 2020 15:51:53 +0000 (16:51 +0100)]
Fix ext/date stubs
Closes GH-6523.
Nikita Popov [Fri, 18 Sep 2020 15:46:42 +0000 (17:46 +0200)]
PDO MySQL: Handle boolean parameter binding with libmysql
Previously boolean parameters were simply silently ignored...
Nikita Popov [Fri, 18 Dec 2020 09:20:13 +0000 (10:20 +0100)]
Merge branch 'PHP-7.4' into PHP-8.0
* PHP-7.4:
MySQLnd: Support cursors in store/get result
Nikita Popov [Wed, 16 Dec 2020 11:12:06 +0000 (12:12 +0100)]
MySQLnd: Support cursors in store/get result
This fixes two related issues:
1. When a PS with cursor is used in store_result/get_result,
perform a COM_FETCH with maximum number of rows rather than
silently switching to an unbuffered result set (in the case of
store_result) or erroring (in the case of get_result).
In the future, we might want to make get_result unbuffered for
PS with cursors, as using cursors with buffered result sets
doesn't really make sense. Unlike store_result, get_result
isn't very explicit about what kind of result set is desired.
2. If the client did not request a cursor, but the server reports
that a cursor exists, ignore this and treat the PS as if it
has no cursor (i.e. to not use COM_FETCH). It appears to be a
server side bug that a cursor used inside an SP will be reported
to the client, even though the client cannot use the cursor.
Fixes bug #64638, bug #72862, bug #77935.
Closes GH-6518.
Christoph M. Becker [Wed, 16 Dec 2020 19:02:45 +0000 (20:02 +0100)]
Fix #80521: Parameters with underscores no longer recognized
We have to use the proper value for the bitmask.
Nikita Popov [Wed, 16 Dec 2020 16:01:15 +0000 (17:01 +0100)]
Detect overlarge step for character range()
This was done for int and float ranges, but not char ranges.
Fixes oss-fuzz #28666.
Nikita Popov [Wed, 16 Dec 2020 14:17:13 +0000 (15:17 +0100)]
PDO MySQL: Use mysqlnd column names
mysqlnd already creates interned zend_strings for us, so let's
make use of them.
This also required updating the PDO case changing code to work
with potentially shared strings. For the lowercasing, use the
optimized zend_string_tolower() implementation.
Nikita Popov [Wed, 16 Dec 2020 09:53:48 +0000 (10:53 +0100)]
Merge branch 'PHP-7.4' into PHP-8.0
* PHP-7.4:
Fixed bug #67983
Nikita Popov [Wed, 16 Dec 2020 09:52:27 +0000 (10:52 +0100)]
Fixed bug #67983
We need to check the BIT case first, otherwise it will get skipped
in INT_AND_FLOAT_NATIVE mode.
Nikita Popov [Wed, 16 Dec 2020 09:20:35 +0000 (10:20 +0100)]
Merge branch 'PHP-7.4' into PHP-8.0
* PHP-7.4:
Fix bug #80523
Nikita Popov [Wed, 16 Dec 2020 09:16:50 +0000 (10:16 +0100)]
Fix bug #80523
Don't truncate the file length to unsigned int...
I have no idea whether that fully fixes the problem because the
process gets OOM killed before finishing, but at least the
immediate parse error is gone now.
Derick Rethans [Tue, 15 Dec 2020 14:13:43 +0000 (14:13 +0000)]
Merge branch 'PHP-7.4' into PHP-8.0
Derick Rethans [Tue, 15 Dec 2020 14:13:29 +0000 (14:13 +0000)]
Prepare for 7.4.15
Gabriel Caruso [Tue, 15 Dec 2020 14:03:21 +0000 (11:03 -0300)]
Prepare for PHP 8.0.2
This was missing from
f1f78ac875fcfbf1347eb81eac06c11343c4a664 .
Gabriel Caruso [Tue, 15 Dec 2020 13:30:55 +0000 (10:30 -0300)]
Next is 8.0.2
Dmitry Stogov [Tue, 15 Dec 2020 11:30:58 +0000 (14:30 +0300)]
Optimize out result value of ASSIGN, ASSIGN_OP and INC/DEC opcodes, if possible.
Christoph M. Becker [Tue, 15 Dec 2020 10:45:35 +0000 (11:45 +0100)]
Merge branch 'PHP-7.4' into PHP-8.0
* PHP-7.4:
Fix #77322: PharData::addEmptyDir('/') Possible integer overflow
Christoph M. Becker [Fri, 11 Dec 2020 15:47:42 +0000 (16:47 +0100)]
Fix #77322: PharData::addEmptyDir('/') Possible integer overflow
`phar_path_check()` already strips a leading slash, so we must not
attempt to strip the trailing slash from an now empty directory name.
Closes GH-6508.
Christoph M. Becker [Tue, 15 Dec 2020 10:32:10 +0000 (11:32 +0100)]
Merge branch 'PHP-7.4' into PHP-8.0
* PHP-7.4:
7.3.27 is next
Christoph M. Becker [Tue, 15 Dec 2020 10:30:46 +0000 (11:30 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
7.3.27 is next
Christoph M. Becker [Tue, 15 Dec 2020 10:28:01 +0000 (11:28 +0100)]
7.3.27 is next
Ayesh Karunaratne [Wed, 2 Dec 2020 21:07:47 +0000 (04:07 +0700)]
JIT: Update invalid opcache.jit INI value message to include "tracing" and "function" values
`opcache.jit` accepts `tracing` and `function` as aliases, but they were not mentioned in the start-up INI warning message.
This updates the error message to include all possible values.
Closes GH-6490.
Nikita Popov [Tue, 15 Dec 2020 09:15:47 +0000 (10:15 +0100)]
Merge branch 'PHP-7.4' into PHP-8.0
* PHP-7.4:
IBM i PASE doesn't support ITIMER_PROF
Calvin Buckley [Thu, 10 Dec 2020 18:25:32 +0000 (14:25 -0400)]
IBM i PASE doesn't support ITIMER_PROF
Like Cygwin, this platform needs to use a real-time timer.
This was based on a patch by @kadler, but it didn't handle unsetting
the timer, so the timeout would continue to be active, triggering
`hard_timeout` unexpectedly. The patch is fixed to handle unsetting.
Closes GH-6503.
David Carlier [Mon, 14 Dec 2020 18:42:52 +0000 (18:42 +0000)]
JIT disabled build fix.
Closes GH-6514.
Christoph M. Becker [Mon, 14 Dec 2020 21:42:54 +0000 (22:42 +0100)]
Add Windows support for OCI 19
As requested by Christopher Jones.
Christoph M. Becker [Mon, 14 Dec 2020 17:27:53 +0000 (18:27 +0100)]
Merge branch 'PHP-7.4' into PHP-8.0
* PHP-7.4:
Drop pdo_mysql_prepare_load_data.phpt
Christoph M. Becker [Fri, 11 Dec 2020 18:20:16 +0000 (19:20 +0100)]
Drop pdo_mysql_prepare_load_data.phpt
Like the test title and some comments in this test describe, this test
was supposed to have `::prepare()` failing because `LOAD DATA INFILE`
would not be supported as prepared statement, and then the test checks
whether follow-up queries would succeed. However, `LOAD DATA INFILE`
is supported for prepared statements at least on Windows with mysqlnd,
so the test does no longer test what it is supposed to do. Therefore,
we drop it.
Closes GH-6509.
Dmitry Stogov [Mon, 14 Dec 2020 12:29:21 +0000 (15:29 +0300)]
Remove unused flag
Dmitry Stogov [Mon, 14 Dec 2020 12:28:03 +0000 (15:28 +0300)]
Fixed bug #80506 (Immediate SIGSEGV upon ini_set("opcache.jit_debug", 1))
Dmitry Stogov [Mon, 14 Dec 2020 12:26:11 +0000 (15:26 +0300)]
Fixed bug #80506 (Immediate SIGSEGV upon ini_set("opcache.jit_debug", 1))
Jakub Zelenka [Sun, 13 Dec 2020 18:42:11 +0000 (18:42 +0000)]
Merge branch 'PHP-7.4' into PHP-8.0
Jakub Zelenka [Sat, 28 Nov 2020 21:27:53 +0000 (21:27 +0000)]
Fix bug #69625: FPM returns 200 status on request without SCRIPT_FILENAME
ekinhbayar [Fri, 11 Dec 2020 10:07:07 +0000 (13:07 +0300)]
Remove bug41347.phpt as the error cases are already tested
Closes GH-6506.
Nikita Popov [Fri, 11 Dec 2020 15:35:03 +0000 (16:35 +0100)]
Fixed bug #79132
Following cmb's suggestion and replacing the counter with a check
against the bound_params HT, which ensures that both cannot go
out of sync.
Nikita Popov [Fri, 11 Dec 2020 13:47:38 +0000 (14:47 +0100)]
PDO MySQL: Fix nextRowset() on libmysqlclient with native PS
The logic after next_result should match the one after execute.
This was the case for mysqlnd but not libmysqlclient, which used
the non-PS logic.