]>
granicus.if.org Git - php/log
Nikita Popov [Thu, 24 Jan 2019 12:40:54 +0000 (13:40 +0100)]
Merge branch 'PHP-7.3'
Nikita Popov [Thu, 24 Jan 2019 12:40:36 +0000 (13:40 +0100)]
Merge branch 'PHP-7.2' into PHP-7.3
Nikita Popov [Thu, 24 Jan 2019 12:36:47 +0000 (13:36 +0100)]
Revert "Prefix error_code with underscore in FastZPP implementation"
This reverts commit
6305119a5193d4318add01190ca4afbb49ded102 .
This is a source-compatibility break for extensions that define
custom FastZPP macros, such as ext/uv:
https://github.com/bwoebi/php-uv/blob/
a983eb17b69f74a45d785ddc6a7bff3d4531b88c /php_uv.c#L75
I don't think that FastZPP was intended to be used this way, but
let's revert this from release branches to avoid extension breakage.
Christoph M. Becker [Thu, 24 Jan 2019 12:09:18 +0000 (13:09 +0100)]
Improve wording
As suggested by Tom Sommer[1].
[1] <https://github.com/php/php-src/commit/
8a4c2f16217fb8f8d098355f3943f31e82bcfd71 #r32037340>
Christoph M. Becker [Thu, 24 Jan 2019 11:41:53 +0000 (12:41 +0100)]
Fix README.RELEASE_PROCESS
According to current practice, and as discussed with other RMs.
Dmitry Stogov [Thu, 24 Jan 2019 10:08:00 +0000 (13:08 +0300)]
Merge branch 'PHP-7.3'
* PHP-7.3:
Fixed bug #77494 (Disabling class causes segfault on member access)
Dmitry Stogov [Thu, 24 Jan 2019 10:07:31 +0000 (13:07 +0300)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
Fixed bug #77494 (Disabling class causes segfault on member access)
Dmitry Stogov [Thu, 24 Jan 2019 10:06:36 +0000 (13:06 +0300)]
Fixed bug #77494 (Disabling class causes segfault on member access)
Nikita Popov [Thu, 24 Jan 2019 09:58:24 +0000 (10:58 +0100)]
Merge branch 'PHP-7.3'
Nikita Popov [Thu, 24 Jan 2019 09:57:45 +0000 (10:57 +0100)]
Merge branch 'PHP-7.2' into PHP-7.3
Nikita Popov [Thu, 24 Jan 2019 09:56:04 +0000 (10:56 +0100)]
Add flag to disable jumptable optimization
This is useful for coverage. While it is currently safe to just
skip over the SWITCH_* opcodes, this may not be true in the future
due to opcache optimizations, so it's safer to disable emission of
SWITCH_* opcodes entirely.
Gabriel Caruso [Mon, 24 Dec 2018 16:27:53 +0000 (14:27 -0200)]
Make more tests run os MacOS
Nikita Popov [Tue, 22 Jan 2019 17:07:46 +0000 (18:07 +0100)]
Remove the "o" serialization format
We never generate the "o" format during serialization, so let's not
keep this unnecessary attack surface around.
Christoph M. Becker [Tue, 22 Jan 2019 13:06:34 +0000 (14:06 +0100)]
Merge branch 'PHP-7.3'
* PHP-7.3:
Prepare main branch for PHP 7.3.3
Christoph M. Becker [Tue, 22 Jan 2019 13:04:03 +0000 (14:04 +0100)]
Prepare main branch for PHP 7.3.3
Nikita Popov [Tue, 22 Jan 2019 11:28:44 +0000 (12:28 +0100)]
Merge branch 'PHP-7.3'
Nikita Popov [Tue, 22 Jan 2019 11:15:06 +0000 (12:15 +0100)]
Fixed bug #77287
There may be an EXT_NOP opcode before the parameter list, we should
skip over it.
Nikita Popov [Tue, 15 Jan 2019 16:04:24 +0000 (17:04 +0100)]
Implement ??= operator
RFC: https://wiki.php.net/rfc/null_coalesce_equal_operator
$a ??= $b is $a ?? ($a = $b), with the difference that $a is only
evaluated once, to the degree that this is possible. In particular
in $a[foo()] ?? $b function foo() is only ever called once.
However, the variable access themselves will be reevaluated.
Nikita Popov [Wed, 16 Jan 2019 15:23:52 +0000 (16:23 +0100)]
Make tokenizer test robust against token renumbering
Dmitry Stogov [Mon, 21 Jan 2019 23:11:50 +0000 (02:11 +0300)]
Most opcodes that don't consume their OP1 operand, must be terminated with real consumer, and don't have to be checked.
These checks are replaced by ZEND_ASSERT.
Dmitry Stogov [Mon, 21 Jan 2019 22:33:35 +0000 (01:33 +0300)]
Use SSA instead of bogus reverse linear scan.
Dmitry Stogov [Mon, 21 Jan 2019 20:34:09 +0000 (23:34 +0300)]
Fixed odd ROPE_ADD instruction placement.
Christoph M. Becker [Mon, 21 Jan 2019 19:23:53 +0000 (20:23 +0100)]
[ci skip] List FFI extension
Dmitry Stogov [Mon, 21 Jan 2019 19:18:07 +0000 (22:18 +0300)]
Use ZEND_FUNC_FREE_LOOP_VAR flag to avoid useless iterations.
Christoph M. Becker [Mon, 21 Jan 2019 16:55:53 +0000 (17:55 +0100)]
[ci skip] Add opcache.preload directive
Dmitry Stogov [Mon, 21 Jan 2019 15:17:10 +0000 (18:17 +0300)]
Avoid double live ranges recalculation.
Christoph M. Becker [Mon, 21 Jan 2019 14:58:02 +0000 (15:58 +0100)]
[ci skip] Note preloading and ext/ffi in UPGRADING
Christoph M. Becker [Mon, 21 Jan 2019 14:22:48 +0000 (15:22 +0100)]
Remove superfluous variable
This has been missed when libsqlite3 has been unbundled.
Dmitry Stogov [Mon, 21 Jan 2019 14:25:24 +0000 (17:25 +0300)]
Live ranges construction optimization
Christoph M. Becker [Mon, 21 Jan 2019 13:01:34 +0000 (14:01 +0100)]
Use pkg-config to detect and configure for system libgd
Formerly, a single option `--with-gd` was sufficient to enable the
extension, and to determine whether to use the system or the bundled
libgd depending on whether a directory was passed. Since pkg-config
determines the path automatically, we now offer `--enable-gd` (whether
the extension should be build) and `--with-external-gd` (whether to use
the system libgd).
Nikita Popov [Thu, 17 Jan 2019 15:07:17 +0000 (16:07 +0100)]
Implement single-pass live range calculation
Instead of interleaving creation of live-ranges with the main
compiler code, compute them in a separate pass over the opcodes
as part of pass_two. Additionally, do not keep live ranges
synchronized during optimization in opcache and instead use the
same mechanism to recompute them after optimization.
George Wang [Sun, 20 Jan 2019 20:11:58 +0000 (15:11 -0500)]
Merge branch 'PHP-7.3'
George Wang [Sun, 20 Jan 2019 20:11:37 +0000 (15:11 -0500)]
Merge branch 'PHP-7.2' into PHP-7.3
George Wang [Sun, 20 Jan 2019 20:10:19 +0000 (15:10 -0500)]
Checkin LiteSpeed SAPI 7.2.
Anatol Belski [Sun, 20 Jan 2019 15:00:46 +0000 (16:00 +0100)]
Merge branch 'PHP-7.3'
* PHP-7.3:
Update NEWS [ci skip]
Update NEWS [ci skip]
Anatol Belski [Sun, 20 Jan 2019 15:00:25 +0000 (16:00 +0100)]
Update NEWS [ci skip]
Anatol Belski [Sun, 20 Jan 2019 14:59:08 +0000 (15:59 +0100)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
Update NEWS [ci skip]
Anatol Belski [Sun, 20 Jan 2019 14:58:19 +0000 (15:58 +0100)]
Update NEWS [ci skip]
Tyson Andre [Sat, 19 Jan 2019 16:02:37 +0000 (11:02 -0500)]
[ci skip] Fix typos in UPGRADING
Anatol Belski [Sat, 19 Jan 2019 12:56:51 +0000 (13:56 +0100)]
Merge branch 'PHP-7.3'
* PHP-7.3:
Skip test on unsuitable build
Anatol Belski [Sat, 19 Jan 2019 12:53:32 +0000 (13:53 +0100)]
Skip test on unsuitable build
This test reveals a difference between TS and NTS through all the
versions, which is probably too late to fix at this stage of 7.3.
While NTS always relies on the system getcwd(), TS uses a fake CWD
which might get out of sync when the real dir is deleted. Thus,
skip test on unsuitable build. Investigate possibilities to fix this
edge case for later versions.
Christoph M. Becker [Sat, 19 Jan 2019 09:35:39 +0000 (10:35 +0100)]
Sync with upstream
Even though libgd/libgd#492 is not a relevant bug fix for PHP, since
the binding doesn't use the `gdImage*Ptr()` functions at all, we're
porting the fix to stay in sync here.
Christoph M. Becker [Sat, 19 Jan 2019 10:21:07 +0000 (11:21 +0100)]
Merge branch 'PHP-7.3'
* PHP-7.3:
Fix failing test
Christoph M. Becker [Sat, 19 Jan 2019 10:13:13 +0000 (11:13 +0100)]
Fix failing test
Christoph M. Becker [Sat, 19 Jan 2019 09:18:55 +0000 (10:18 +0100)]
Merge branch 'PHP-7.3'
* PHP-7.3:
Fix #77479: imagewbmp() segfaults with very large images
Christoph M. Becker [Sat, 19 Jan 2019 09:17:20 +0000 (10:17 +0100)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
Fix #77479: imagewbmp() segfaults with very large images
Christoph M. Becker [Sat, 19 Jan 2019 09:03:11 +0000 (10:03 +0100)]
Fix #77479: imagewbmp() segfaults with very large images
We must not proceed working with the Wbmp structure, if it hasn't been
allocated.
Anatol Belski [Sat, 19 Jan 2019 02:34:36 +0000 (03:34 +0100)]
Merge branch 'PHP-7.3'
* PHP-7.3:
Make test output more reliable
Anatol Belski [Sat, 19 Jan 2019 02:33:37 +0000 (03:33 +0100)]
Make test output more reliable
Anatol Belski [Sat, 19 Jan 2019 01:39:42 +0000 (02:39 +0100)]
Merge branch 'PHP-7.3'
* PHP-7.3:
Fixed bug #77484 Zend engine crashes when calling realpath in invalid working dir
Anatol Belski [Sat, 19 Jan 2019 01:34:59 +0000 (02:34 +0100)]
Fixed bug #77484 Zend engine crashes when calling realpath in invalid working dir
Nikita Popov [Fri, 18 Jan 2019 14:03:00 +0000 (15:03 +0100)]
Merge branch 'PHP-7.3'
Nikita Popov [Fri, 18 Jan 2019 14:01:51 +0000 (15:01 +0100)]
Add additional no_sanitize_address attributes
To fix bug #77447 in release mode as well.
Nikita Popov [Fri, 18 Jan 2019 11:49:08 +0000 (12:49 +0100)]
Merge branch 'PHP-7.3'
Nikita Popov [Fri, 18 Jan 2019 11:48:52 +0000 (12:48 +0100)]
Merge branch 'PHP-7.2' into PHP-7.3
Lauri Kenttä [Wed, 16 Jan 2019 20:08:03 +0000 (22:08 +0200)]
Fix seeking in php://input
Nikita Popov [Fri, 18 Jan 2019 11:06:42 +0000 (12:06 +0100)]
Merge branch 'PHP-7.3'
Nikita Popov [Fri, 18 Jan 2019 11:04:33 +0000 (12:04 +0100)]
Merge branch 'PHP-7.2' into PHP-7.3
Pedro Magalhães [Wed, 16 Jan 2019 00:33:03 +0000 (00:33 +0000)]
Fixed bug #76675
Leave a reference to the resource in the php_curl.
Dmitry Stogov [Fri, 18 Jan 2019 09:43:42 +0000 (12:43 +0300)]
Micro-optimization
Dmitry Stogov [Thu, 17 Jan 2019 22:22:14 +0000 (01:22 +0300)]
Optimize zend_handle_fetch_obj_flags()
Dmitry Stogov [Thu, 17 Jan 2019 21:53:48 +0000 (00:53 +0300)]
Improved ZEND_TRY_ASSIGN... API to avoid unnecessary double copying and reduce code bloat.
Jakub Zelenka [Thu, 17 Jan 2019 20:05:09 +0000 (20:05 +0000)]
Merge branch 'PHP-7.3'
Jakub Zelenka [Thu, 17 Jan 2019 20:04:44 +0000 (20:04 +0000)]
List me in the openssl maintainers
I have been basically doing that since 2015 or so
Jakub Zelenka [Thu, 17 Jan 2019 18:38:59 +0000 (18:38 +0000)]
Merge branch 'PHP-7.3'
Jakub Zelenka [Thu, 17 Jan 2019 18:33:53 +0000 (18:33 +0000)]
Fix bug #77430 (php-fpm crashes with Main process exited)
Dmitry Stogov [Thu, 17 Jan 2019 07:53:58 +0000 (10:53 +0300)]
Removed useless Z_REFCOUNTED_P() checks.
Christoph M. Becker [Wed, 16 Jan 2019 19:23:17 +0000 (20:23 +0100)]
Merge branch 'PHP-7.3'
* PHP-7.3:
Fix #73614: gdImageFilledArc() doesn't properly draw pies
Christoph M. Becker [Wed, 16 Jan 2019 19:21:03 +0000 (20:21 +0100)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
Fix #73614: gdImageFilledArc() doesn't properly draw pies
Christoph M. Becker [Wed, 16 Jan 2019 19:10:04 +0000 (20:10 +0100)]
Fix #73614: gdImageFilledArc() doesn't properly draw pies
The fix for PHP bug 43828[1] changed the algorithm from drawing filled
pies from drawing multiple triangles to drawing a single polygon. Due
to quirks of the filled polygon drawing algorithm, we had to filter out
extraneous vertices. This lead, however, to a bug regarding displaced
starting and ending points near 90° and 270° degrees, which we fix by
reinserting these vertices if they had been removed.
This fix is a port of libgd/libgd@
1406b1a .
[1] <https://bugs.php.net/bug.php?id=43828>
Dmitry Stogov [Wed, 16 Jan 2019 11:26:32 +0000 (14:26 +0300)]
Reduce slow code size
Dmitry Stogov [Wed, 16 Jan 2019 09:49:28 +0000 (12:49 +0300)]
Micro-optimization
Dmitry Stogov [Wed, 16 Jan 2019 08:56:53 +0000 (11:56 +0300)]
Extend zend_get_property_offset() to return property_info for typed properties.
Dmitry Stogov [Wed, 16 Jan 2019 08:55:52 +0000 (11:55 +0300)]
Fixed tests
Dmitry Stogov [Wed, 16 Jan 2019 08:06:19 +0000 (11:06 +0300)]
Fixed and improved incorrect usage of value_type argument.
Dmitry Stogov [Tue, 15 Jan 2019 23:30:15 +0000 (02:30 +0300)]
Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
Fix param list for build without global reg
Dmitry Stogov [Tue, 15 Jan 2019 23:13:43 +0000 (02:13 +0300)]
Separated zend_assign_to_typed_prop()
Anatol Belski [Tue, 15 Jan 2019 21:31:52 +0000 (22:31 +0100)]
Fix param list for build without global reg
Dmitry Stogov [Tue, 15 Jan 2019 21:22:34 +0000 (00:22 +0300)]
Reuse zend_incdec_typed_ref() and separate zend_incdec_typed_prop()
Dmitry Stogov [Tue, 15 Jan 2019 15:49:05 +0000 (18:49 +0300)]
Separated zend_binary_assign_op_typed_ref() and zend_binary_assign_op_typed_prop() helpers
Dmitry Stogov [Tue, 15 Jan 2019 15:03:46 +0000 (18:03 +0300)]
Fixed uninitialized result of PRE_INC/PRE_DEC in case of exception.
Separated increment/decrement of typed reference into helper.
Nikita Popov [Tue, 15 Jan 2019 12:52:32 +0000 (13:52 +0100)]
Add dummy get_gc handler for iterator wrapper
get_gc is assumed to be non-NULL in master, and get_gc can be called
on the iterator wrapper if during generator GC, so we need to define
this handler. For now it's just a dummy, though for full support we'd
have to also add a get_gc iterator handler that is called here.
Nikita Popov [Tue, 15 Jan 2019 09:13:39 +0000 (10:13 +0100)]
Document pkg-config related changes
Creating a separate section in UPGRADING for this, as there are a
lot of these, and there's going to be more of them.
Nikita Popov [Fri, 11 Jan 2019 13:15:18 +0000 (14:15 +0100)]
Migrate ext/gd to pkg-config
* --with-webp-dir becomes --with-webp
* --with-jpeg-dir becomes --with-jpeg
* --with-png-dir is removed. libpng is required.
* --with-zlib-dir is removed. zlib is required.
* --with-xpm-dir becomes --with-xpm.
We also enable --with-webp on Travis.
Nikita Popov [Tue, 15 Jan 2019 08:53:37 +0000 (09:53 +0100)]
Fix handling of UNDEF properties in compound assign
Restore NULLing of UNDEF values in get_property_ptr_ptr for the
BP_VAR_R and BP_VAR_RW cases.
Dmitry Stogov [Tue, 15 Jan 2019 08:14:33 +0000 (11:14 +0300)]
Use fastcall calling convention
Dmitry Stogov [Tue, 15 Jan 2019 07:28:01 +0000 (10:28 +0300)]
Removed missed and unused function declaration
David Carlier [Fri, 5 Oct 2018 14:09:25 +0000 (15:09 +0100)]
Refactor subset of openssl module.
Proposal to abstract a subset of the openssl module,
to be able to use two ways encryption outside of this context.
Dmitry Stogov [Mon, 14 Jan 2019 10:59:58 +0000 (13:59 +0300)]
Merge branch 'PHP-7.3'
* PHP-7.3:
Fixed bug #77308 (Unbuffered queries memory leak)
Dmitry Stogov [Mon, 14 Jan 2019 10:59:30 +0000 (13:59 +0300)]
Fixed bug #77308 (Unbuffered queries memory leak)
Nikita Popov [Mon, 14 Jan 2019 10:50:09 +0000 (11:50 +0100)]
Merge branch 'PHP-7.3'
[ci skip]
Nikita Popov [Mon, 14 Jan 2019 10:49:58 +0000 (11:49 +0100)]
Merge branch 'PHP-7.2' into PHP-7.3
[ci skip]
wbob [Sat, 12 Jan 2019 08:49:23 +0000 (09:49 +0100)]
document open_basedir and realpath cache coupling in php.ini
[ci skip]
Nikita Popov [Mon, 14 Jan 2019 10:45:07 +0000 (11:45 +0100)]
Merge branch 'PHP-7.3'
Nikita Popov [Mon, 14 Jan 2019 10:43:02 +0000 (11:43 +0100)]
Fixed bug #77447
By disabling asan for CPU support helpers used in ifunc resolvers.
Dmitry Stogov [Mon, 14 Jan 2019 10:21:03 +0000 (13:21 +0300)]
Merge branch 'PHP-7.3'
* PHP-7.3:
Fixed bug #77263 (Segfault when using 2 RecursiveFilterIterator)
Dmitry Stogov [Mon, 14 Jan 2019 10:18:28 +0000 (13:18 +0300)]
Fixed bug #77263 (Segfault when using 2 RecursiveFilterIterator)
Dmitry Stogov [Mon, 14 Jan 2019 10:15:52 +0000 (13:15 +0300)]
Fixed 32/64-bit mismatch
Nikita Popov [Mon, 14 Jan 2019 09:24:11 +0000 (10:24 +0100)]
Merge branch 'PHP-7.3'
Nikita Popov [Mon, 14 Jan 2019 09:23:44 +0000 (10:23 +0100)]
Merge branch 'PHP-7.2' into PHP-7.3