]>
granicus.if.org Git - php/log
Stanislav Malyshev [Mon, 26 Aug 2019 02:21:08 +0000 (19:21 -0700)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Fix #75457: heap-use-after-free in php7.0.25
Stanislav Malyshev [Mon, 26 Aug 2019 02:21:04 +0000 (19:21 -0700)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
Fix #75457: heap-use-after-free in php7.0.25
Stanislav Malyshev [Mon, 26 Aug 2019 02:20:59 +0000 (19:20 -0700)]
Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
Fix #75457: heap-use-after-free in php7.0.25
Christoph M. Becker [Fri, 16 Aug 2019 12:29:19 +0000 (14:29 +0200)]
Fix #75457: heap-use-after-free in php7.0.25
Backport <https://vcs.pcre.org/pcre?view=revision&revision=1638>.
Theodore Brown [Sun, 25 Aug 2019 05:33:51 +0000 (00:33 -0500)]
Fix #78454: Consecutive numeric separators cause OOM error
Resolves out of memory error when consecutive numeric separators follow a binary/hex literal.
Christoph M. Becker [Sat, 24 Aug 2019 08:28:43 +0000 (10:28 +0200)]
Don't modify arrays passed by value
Stanislav Malyshev [Sun, 25 Aug 2019 07:20:40 +0000 (00:20 -0700)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Update Oniguruma to 6.9.1
Stanislav Malyshev [Sun, 25 Aug 2019 06:53:35 +0000 (23:53 -0700)]
Update Oniguruma to 6.9.1
Stanislav Malyshev [Sun, 25 Aug 2019 06:17:12 +0000 (23:17 -0700)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Fix CVE-2019-13224: don't allow different encodings for onig_new_deluxe()
set version for release
Stanislav Malyshev [Sun, 25 Aug 2019 06:16:09 +0000 (23:16 -0700)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
Fix CVE-2019-13224: don't allow different encodings for onig_new_deluxe()
set version for release
Stanislav Malyshev [Sun, 25 Aug 2019 06:15:36 +0000 (23:15 -0700)]
Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
Fix CVE-2019-13224: don't allow different encodings for onig_new_deluxe()
set version for release
Stanislav Malyshev [Sun, 25 Aug 2019 06:11:45 +0000 (23:11 -0700)]
Fix CVE-2019-13224: don't allow different encodings for onig_new_deluxe()
Backport from https://github.com/kkos/oniguruma/commit/
0f7f61ed1b7b697e283e37bd2d731d0bd57adb55
Nikita Popov [Fri, 16 Aug 2019 10:55:28 +0000 (12:55 +0200)]
Relax closure $this unbinding deprecation
Only deprecate unbinding of $this from a closure if $this is
syntactically used within the closure.
This is desired to support Laravel's macro system, see laravel/framework#29482.
This should still allow us to implement the performance improvements
we're interested in for PHP 8, without breaking existing use-cases.
Nikita Popov [Fri, 23 Aug 2019 14:58:34 +0000 (16:58 +0200)]
Fix arginfo leak when using disabled_classes
Also remove the hack where scope is set to NULL in order to make
free_internal_arg_info work. Instead explicitly call it for class
methods.
This fixes the asan build for Zend/tests/bug77494.phpt.
Nikita Popov [Fri, 23 Aug 2019 14:18:15 +0000 (16:18 +0200)]
Fix noalias violation in select call
Nikita Popov [Fri, 23 Aug 2019 14:14:19 +0000 (16:14 +0200)]
Avoid strncat use in proc_open
Instead manually manage the insertion position.
Nikita Popov [Fri, 23 Aug 2019 13:51:57 +0000 (15:51 +0200)]
Replace strncat in filter implementation
In this case we already know exactly where we need to write, no
need to use strncat at all.
Nikita Popov [Wed, 21 Aug 2019 14:19:58 +0000 (16:19 +0200)]
Support variable element size in spl heap implementation
This allows us to drop the intermediate allocation for
spl_pqueue_elem.
This fixes GC for SplPriorityQueue, because we can now directly
return a well-formed GC child buffer.
Nikita Popov [Fri, 23 Aug 2019 13:27:28 +0000 (15:27 +0200)]
Fixed bug #78436
Christoph M. Becker [Fri, 23 Aug 2019 12:02:48 +0000 (14:02 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Fix #77812: Interactive mode does not support PHP 7.3-style heredoc
Christoph M. Becker [Fri, 23 Aug 2019 11:59:10 +0000 (13:59 +0200)]
Fix #77812: Interactive mode does not support PHP 7.3-style heredoc
As of PHP 7.3.0, the rules regarding the heredoc and nowdoc closing
identifier have been relaxed. While formerly, the closing identifier
was required to be placed at the beginning of a line and to be
immediately followed by (a semicolon and) a line break, it may now be
preceeded by whitespace, and may be followed by any non-word character.
We adjust the recognition logic respectively.
Christoph M. Becker [Fri, 23 Aug 2019 10:22:28 +0000 (12:22 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Suppress deprecation warning on IDNA2003 ICU methods for clang
Christoph M. Becker [Fri, 23 Aug 2019 10:21:57 +0000 (12:21 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
Suppress deprecation warning on IDNA2003 ICU methods for clang
Christoph M. Becker [Fri, 23 Aug 2019 09:14:18 +0000 (11:14 +0200)]
Suppress deprecation warning on IDNA2003 ICU methods for clang
Christoph M. Becker [Fri, 23 Aug 2019 09:30:31 +0000 (11:30 +0200)]
Fix #78438: Corruption when __unserializing deeply nested structures
When storing two temporary variables for delayed __unserialize() calls,
we have to make sure that both fit into the same linked list element.
To that end we introduce the internal API `tmp_var` which allows to
reserve `num` slots in the same list element.
We also fix the `var_dtor_entries` struct definition to use the proper
size, namely `VAR_DTOR_ENTRIES_MAX`.
Christoph M. Becker [Thu, 22 Aug 2019 13:58:25 +0000 (15:58 +0200)]
Fix var_unserializer debug code
At least it now compiles and should be free of warnings.
Christoph M. Becker [Wed, 21 Aug 2019 20:54:05 +0000 (22:54 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Fix #78441: Parse error due to heredoc identifier followed by digit
Christoph M. Becker [Wed, 21 Aug 2019 20:51:51 +0000 (22:51 +0200)]
Fix #78441: Parse error due to heredoc identifier followed by digit
Since digits are allowed for identifiers, we have to cater to them as
well.
George Peter Banyard [Tue, 20 Aug 2019 18:15:22 +0000 (20:15 +0200)]
Remove dead code in base64.c
Remi Collet [Tue, 20 Aug 2019 14:31:11 +0000 (16:31 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
ensure proper settings for test
Remi Collet [Tue, 20 Aug 2019 14:30:52 +0000 (16:30 +0200)]
ensure proper settings for test
Derick Rethans [Tue, 20 Aug 2019 14:10:36 +0000 (14:10 +0000)]
Update NEWS for 7.4.0RC1
Derick Rethans [Tue, 20 Aug 2019 14:09:17 +0000 (14:09 +0000)]
Update NEWS for PHP 7.4.0beta4
Christoph M. Becker [Tue, 20 Aug 2019 14:04:14 +0000 (16:04 +0200)]
Fix #78386: fstat mode has unexpected value on PHP 7.4
We must not assume that any file which is not a directory is a regular
file. Therefore we employ `GetFileType()` in this case to properly
distinguish between character special, FIFO special and regular files.
Christoph M. Becker [Tue, 20 Aug 2019 11:58:54 +0000 (13:58 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Don't use C++ style comments
Christoph M. Becker [Tue, 20 Aug 2019 11:58:22 +0000 (13:58 +0200)]
Don't use C++ style comments
Cf. <https://github.com/php/php-src/blob/
f45b61b8988b5b2d80dd4a1df7edd04282cf319a /CODING_STANDARDS.md#syntax-and-indentation>
cc @mcmic
Christoph M. Becker [Tue, 20 Aug 2019 11:34:42 +0000 (13:34 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
fix the problem for connect_attr, set db condition, and add a new attribute _server_host
Christoph M. Becker [Tue, 20 Aug 2019 11:32:53 +0000 (13:32 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
fix the problem for connect_attr, set db condition, and add a new attribute _server_host
Qianqian Bu [Mon, 12 Aug 2019 02:00:31 +0000 (04:00 +0200)]
fix the problem for connect_attr, set db condition, and add a new attribute _server_host
Christoph M. Becker [Mon, 19 Aug 2019 17:58:20 +0000 (19:58 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Fix #78220: Can't access OneDrive folder
Christoph M. Becker [Mon, 19 Aug 2019 17:56:12 +0000 (19:56 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
Fix #78220: Can't access OneDrive folder
Christoph M. Becker [Mon, 19 Aug 2019 17:44:37 +0000 (19:44 +0200)]
Fix #78220: Can't access OneDrive folder
As of Windows 1903, when the OneDrive on-demand feature is enabled, the
OneDrive folder is reported as reparse point by `FindFirstFile()`, but
trying to get information about the reparse point using
`DeviceIoControl()` fails with `ERROR_NOT_A_REPARSE_POINT`. We work
around this problem by falling back to `GetFileInformationByHandle()`
if that happens, but only if the reparse point is reported as cloud
reparse point, and only if PHP is running on Windows 1903 or later.
The patch has been developed in collaboration with ab@php.net.
We should keep an eye on the somewhat quirky OneDrive behavior, since
it might change again in a future Windows release.
Nikita Popov [Sat, 17 Aug 2019 08:59:52 +0000 (10:59 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Sat, 17 Aug 2019 08:57:26 +0000 (10:57 +0200)]
Fixed bug #77922
In PHP 7.3 shadow properties are no longer duplicated. Make sure we
only release them if the property was defined on the parent class,
which means that it changed from private->shadow, which is where
duplication does happen.
Sara Golemon [Fri, 16 Aug 2019 16:41:32 +0000 (12:41 -0400)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Suppress deprecation warning on IDNA2003 ICU methods
Sara Golemon [Fri, 16 Aug 2019 16:41:02 +0000 (12:41 -0400)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
Suppress deprecation warning on IDNA2003 ICU methods
Sara Golemon [Fri, 16 Aug 2019 16:40:20 +0000 (12:40 -0400)]
Suppress deprecation warning on IDNA2003 ICU methods
Sara Golemon [Fri, 16 Aug 2019 15:40:01 +0000 (11:40 -0400)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Revert "Move to non deprecated API on suitable ICU versions"
Sara Golemon [Fri, 16 Aug 2019 15:25:33 +0000 (11:25 -0400)]
Revert "Move to non deprecated API on suitable ICU versions"
This reverts commit
13a2f2d041999dca0066542f2a552798fab9a13d .
The APIs used by this commit aren't entirely equivalent to the original ones.
Jan Altensen [Thu, 15 Aug 2019 14:11:13 +0000 (16:11 +0200)]
appveyor: exclude some documentation paths
Change-Id: Ifff234133f4437bfe5c31c1f1e00092cd60e1d53
Christoph M. Becker [Thu, 15 Aug 2019 13:30:03 +0000 (15:30 +0200)]
Empty merge
Christoph M. Becker [Thu, 15 Aug 2019 13:28:52 +0000 (15:28 +0200)]
Update NEWS
This fix has been cherry-picked into PHP-7.3.9.
Nikita Popov [Thu, 15 Aug 2019 08:38:43 +0000 (10:38 +0200)]
Fixed bug #78409
This removes an incorrect optimization (I think this code used to be
necessary to properly handle references in the Serializable based
implementation, but now this code just avoids an array duplication
in a way that is not sound).
Christoph M. Becker [Wed, 14 Aug 2019 17:25:48 +0000 (19:25 +0200)]
Empty merge
Christoph M. Becker [Wed, 14 Aug 2019 17:24:16 +0000 (19:24 +0200)]
Update credits_ext.h
Nikita Popov [Wed, 14 Aug 2019 15:53:24 +0000 (17:53 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Wed, 14 Aug 2019 14:58:54 +0000 (16:58 +0200)]
Fix reference printing in GC tracing
Nikita Popov [Wed, 14 Aug 2019 15:51:26 +0000 (17:51 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3
Nikita Popov [Wed, 14 Aug 2019 15:48:57 +0000 (17:48 +0200)]
Fixed bug #78412
$this should only be included in the generator GC buffer, if it
will be released on destruction.
Sara Golemon [Tue, 13 Aug 2019 23:34:26 +0000 (19:34 -0400)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Bump for 7.2.23
Sara Golemon [Tue, 13 Aug 2019 23:34:12 +0000 (19:34 -0400)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
Bump for 7.2.23
Sara Golemon [Tue, 13 Aug 2019 23:32:12 +0000 (19:32 -0400)]
Bump for 7.2.23
Christoph M. Becker [Tue, 13 Aug 2019 22:48:49 +0000 (00:48 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Next will be 7.3.10
Christoph M. Becker [Tue, 13 Aug 2019 21:57:48 +0000 (23:57 +0200)]
Next will be 7.3.10
Christoph M. Becker [Tue, 13 Aug 2019 21:26:29 +0000 (23:26 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Bump version numbers
Christoph M. Becker [Tue, 13 Aug 2019 21:23:43 +0000 (23:23 +0200)]
Bump version numbers
This should have been done four weeks ago already.
Nikita Popov [Tue, 13 Aug 2019 18:23:56 +0000 (20:23 +0200)]
Fixed bug #78410
Nikita Popov [Tue, 13 Aug 2019 14:07:51 +0000 (16:07 +0200)]
Add myself to extension maintainer list
Year ranges are wild guesses.
Nikita Popov [Thu, 1 Aug 2019 10:55:39 +0000 (12:55 +0200)]
Fixed bug #72530
For objects with destructors, we will now only call the destructor
in the initial GC run, and remove any nested data. The object is
marked purple so it will be considered a root for the next GC run,
at which point it will be fully destroyed, if possible.
GC counts change on a number of tests, as the objects now get
destroyed later.
Nikita Popov [Tue, 13 Aug 2019 12:40:07 +0000 (14:40 +0200)]
Don't return persistent string from get_cfg_var()
This is not thread-safe.
Nikita Popov [Tue, 13 Aug 2019 12:35:08 +0000 (14:35 +0200)]
Mark PCRE locale key as local persistent
Christoph M. Becker [Tue, 13 Aug 2019 11:25:54 +0000 (13:25 +0200)]
Remove dead code
Nikita Popov [Tue, 13 Aug 2019 10:34:48 +0000 (12:34 +0200)]
Adjust GC count in SPL test
Nikita Popov [Tue, 13 Aug 2019 10:17:08 +0000 (12:17 +0200)]
Remove removed nested data from GC count
Nikita Popov [Tue, 13 Aug 2019 10:08:59 +0000 (12:08 +0200)]
Don't include non-refcounted structures in GC count
Nikita Popov [Tue, 13 Aug 2019 09:44:54 +0000 (11:44 +0200)]
Generalize delref assertion
The refcount should never become negative, not just during GC.
Nikita Popov [Tue, 13 Aug 2019 09:23:06 +0000 (11:23 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Tue, 13 Aug 2019 09:22:10 +0000 (11:22 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3
Nikita Popov [Tue, 13 Aug 2019 09:19:58 +0000 (11:19 +0200)]
Fixed bug #77191
Nikita Popov [Tue, 13 Aug 2019 08:22:32 +0000 (10:22 +0200)]
Fixed bug #78406
Nikita Popov [Tue, 13 Aug 2019 07:54:44 +0000 (09:54 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Tue, 13 Aug 2019 07:54:26 +0000 (09:54 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3
Nikita Popov [Tue, 13 Aug 2019 07:51:29 +0000 (09:51 +0200)]
Don't destroy properties array with unset GC type
As the properties array can also be a GC root, it might have
already been destroyed.
Christoph M. Becker [Mon, 12 Aug 2019 15:59:30 +0000 (17:59 +0200)]
Fix WS
Nikita Popov [Mon, 12 Aug 2019 15:17:42 +0000 (17:17 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Mon, 12 Aug 2019 15:17:30 +0000 (17:17 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3
Nikita Popov [Mon, 12 Aug 2019 14:58:52 +0000 (16:58 +0200)]
Intern alias old_name early
This is likely going to end up interned lateron at some point
when the new_name is referenced somewhere. However, it may be
that there are some uses that do not get interned before that.
In this case we will intern a string that already have zval
users, without updating the refcounted flag on those zvals.
In particular this can happen with something like [Foo::class],
where Foo is an imported symbol. The string it resolves to won't
get interned right away, but may be interned later.
use Foo as Bar;
$x = [Bar::class];
var_dump(Bar::X);
debug_zval_dump($x); // Will show negative refcount
class Foo {
const X = 1;
}
However, this doesn't really fix the root cause, there are probably
other situations where something similar can occur.
Christoph M. Becker [Mon, 12 Aug 2019 12:50:44 +0000 (14:50 +0200)]
Add missing argument checks
These functions don't expect any arguments, so we should check that
none are given.
Nikita Popov [Mon, 12 Aug 2019 08:45:13 +0000 (10:45 +0200)]
Fixed bug #78396
Derick Rethans [Sun, 11 Aug 2019 15:05:59 +0000 (16:05 +0100)]
Updated to version 2019.2 (2019b)
Derick Rethans [Sun, 11 Aug 2019 15:05:59 +0000 (16:05 +0100)]
Empty merge
Derick Rethans [Sun, 11 Aug 2019 15:05:58 +0000 (16:05 +0100)]
Updated to version 2019.2 (2019b)
Christoph M. Becker [Sun, 11 Aug 2019 14:05:53 +0000 (16:05 +0200)]
Fix parameter order
`imagecopymerge()` and `imagecopymergegray()` expect the destination
image first, not the other way round.
Christoph M. Becker [Sun, 11 Aug 2019 13:00:23 +0000 (15:00 +0200)]
Extend color component range checks
We also check for alpha components to be within range, and we add yet
missing range checks for other functions as well.
Dmitry Stogov [Fri, 9 Aug 2019 14:47:35 +0000 (17:47 +0300)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Fixed handling of references in nested data of objects with destructor
Dmitry Stogov [Fri, 9 Aug 2019 14:47:06 +0000 (17:47 +0300)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
Fixed handling of references in nested data of objects with destructor
Dmitry Stogov [Fri, 9 Aug 2019 14:43:50 +0000 (17:43 +0300)]
Fixed handling of references in nested data of objects with destructor
Nikita Popov [Fri, 9 Aug 2019 14:33:21 +0000 (16:33 +0200)]
Don't short-circuit MBFL_OUTPUTFILTER_ILLEGAL_MODE_NONE
Make sure we always go through mbfl_filt_conv_illegal_output(), so
that the number of illegal characters gets counted.
Nikita Popov [Fri, 9 Aug 2019 13:02:06 +0000 (15:02 +0200)]
Fixed bug #78391
Dmitry Stogov [Fri, 9 Aug 2019 12:58:33 +0000 (15:58 +0300)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Fixed second part of the bug #78379 (Cast to object confuses GC, causes crash)