]> granicus.if.org Git - php/log
php
4 years agoRun function JIT tests in nightly build
Nikita Popov [Wed, 29 Jul 2020 14:39:16 +0000 (16:39 +0200)]
Run function JIT tests in nightly build

Changing this for primary x64 and i386 jobs for now.
The different test configurations are now consolidated in one
file shared between both.

4 years agoMerge branch 'PHP-7.4'
Nikita Popov [Wed, 29 Jul 2020 15:05:42 +0000 (17:05 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Consider op1 literal of FETCH_OBJ_R

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Wed, 29 Jul 2020 15:05:35 +0000 (17:05 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Consider op1 literal of FETCH_OBJ_R

4 years agoConsider op1 literal of FETCH_OBJ_R
Nikita Popov [Wed, 29 Jul 2020 15:04:23 +0000 (17:04 +0200)]
Consider op1 literal of FETCH_OBJ_R

FETCH_OBJ_R may have an op1 CONST operand, even though it will
always error. We should take this into account when compacting
literals.

4 years agoLoad ptoper IP value
Dmitry Stogov [Wed, 29 Jul 2020 14:37:01 +0000 (17:37 +0300)]
Load ptoper IP value

4 years agoFixed bug #79888 (Incorrect execution with JIT enabled)
Dmitry Stogov [Wed, 29 Jul 2020 14:32:57 +0000 (17:32 +0300)]
Fixed bug #79888 (Incorrect execution with JIT enabled)

4 years agoFix leak with nullsafe operator with constant LHS
Nikita Popov [Wed, 29 Jul 2020 13:51:47 +0000 (15:51 +0200)]
Fix leak with nullsafe operator with constant LHS

Followup to 5303bcdd32e8171399c2c60bf431e5304a66c39a. We need to
perform the addref after emitting the opline, because that might
intern the string.

Fixes oss-fuzz #24479.

4 years agoFix bug #79900
Nikita Popov [Wed, 29 Jul 2020 13:25:57 +0000 (15:25 +0200)]
Fix bug #79900

Run debug build shutdown GC regardless even if GC has been disabled.
Of course, this only does something meaningful if the GC has been
disabled at runtime and root collection is still enabled. We cannot
prevent leaks if GC is disabled completely.

4 years agoRemove PHP_CHECK_GCC_ARG()
Nikita Popov [Wed, 29 Jul 2020 10:45:26 +0000 (12:45 +0200)]
Remove PHP_CHECK_GCC_ARG()

In favor of AX_CHECK_COMPILE_FLAG(), which we bundle since at least
PHP 7.

Closes GH-5904.

4 years agoMerge branch 'PHP-7.4'
Nikita Popov [Wed, 29 Jul 2020 13:04:41 +0000 (15:04 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix test

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Wed, 29 Jul 2020 13:04:23 +0000 (15:04 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix test

4 years agoFix test
Nikita Popov [Wed, 29 Jul 2020 13:04:05 +0000 (15:04 +0200)]
Fix test

4 years agoTemporary disable abstract test usage for inferring previous type of variables (previ...
Dmitry Stogov [Wed, 29 Jul 2020 11:58:41 +0000 (14:58 +0300)]
Temporary disable abstract test usage for inferring previous type of variables (previous value may be in CPU register and type of the stack slot may be inconsistent).

4 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Wed, 29 Jul 2020 11:37:50 +0000 (13:37 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Revert "Merge branch 'PHP-7.3' into PHP-7.4"

4 years agoRevert "Merge branch 'PHP-7.3' into PHP-7.4"
Christoph M. Becker [Wed, 29 Jul 2020 11:32:59 +0000 (13:32 +0200)]
Revert "Merge branch 'PHP-7.3' into PHP-7.4"

This reverts commit e1f6ab3388f509782857557ee1e40a66b2bb6455, reversing
changes made to e0ebe56ebfc80bae3875b23eca4cbe0803f41e79.

There are obviously issues with running tests in parallel, maybe
related to the cache ID.  This needs to be investigated.  Revert for
now.

4 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Wed, 29 Jul 2020 10:47:41 +0000 (12:47 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Prevent test case from stalling

4 years agoPrevent test case from stalling
Christoph M. Becker [Wed, 29 Jul 2020 10:33:46 +0000 (12:33 +0200)]
Prevent test case from stalling

If the CTRL-C event can't be sent to the child for whatever reason, the
test will never terminate, because `proc_close()` waits for an infinite
amount of time.  Therefore, we `proc_terminate()` the child instead,
after explicitly closing the pipes.

4 years agoMerge branch 'PHP-7.4'
Nikita Popov [Wed, 29 Jul 2020 10:39:58 +0000 (12:39 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix #79895: support = in PHP_CHECK_GCC_ARG m4 macro

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Wed, 29 Jul 2020 10:38:35 +0000 (12:38 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix #79895: support = in PHP_CHECK_GCC_ARG m4 macro

4 years agoFix #79895: support = in PHP_CHECK_GCC_ARG m4 macro
Santiago M. Mola [Fri, 24 Jul 2020 20:46:11 +0000 (22:46 +0200)]
Fix #79895: support = in PHP_CHECK_GCC_ARG m4 macro

Closes GH-5890.

4 years agoFixed live-range interval construction (close all frames)
Dmitry Stogov [Wed, 29 Jul 2020 10:11:27 +0000 (13:11 +0300)]
Fixed live-range interval construction (close all frames)

4 years agoMerge branch 'PHP-7.4'
twosee [Wed, 29 Jul 2020 09:48:01 +0000 (17:48 +0800)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Handle bindto error

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
twosee [Wed, 29 Jul 2020 09:46:57 +0000 (17:46 +0800)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Handle bindto error

4 years agoHandle bindto error
twosee [Wed, 29 Jul 2020 04:59:44 +0000 (12:59 +0800)]
Handle bindto error

Closes GH-5903.

4 years agoFix STR_OR_OBJ_OF_TYPE stringable handling
Nikita Popov [Wed, 29 Jul 2020 09:29:24 +0000 (11:29 +0200)]
Fix STR_OR_OBJ_OF_TYPE stringable handling

4 years agoMove patch to right place
Nikita Popov [Wed, 29 Jul 2020 08:59:40 +0000 (10:59 +0200)]
Move patch to right place

This was supposed to be for laravel, not symfony.

[ci skip]

4 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Wed, 29 Jul 2020 08:17:22 +0000 (10:17 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix #73060: php failed with error after temp folder cleaned up

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Wed, 29 Jul 2020 08:11:11 +0000 (10:11 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix #73060: php failed with error after temp folder cleaned up

4 years agoFix #73060: php failed with error after temp folder cleaned up
Christoph M. Becker [Tue, 28 Jul 2020 12:40:04 +0000 (14:40 +0200)]
Fix #73060: php failed with error after temp folder cleaned up

Instead of storing the mapping base address and the address of
`execute_ex()` in a separate file in the temporary folder, we store
them right at the beginning of the memory mapping.

4 years agoTry to fix laravel PHP 8 incompatibility
Nikita Popov [Wed, 29 Jul 2020 07:54:12 +0000 (09:54 +0200)]
Try to fix laravel PHP 8 incompatibility

[ci skip]

4 years agoUse inline function instead of macro
Dmitry Stogov [Wed, 29 Jul 2020 07:42:12 +0000 (10:42 +0300)]
Use inline function instead of macro

4 years agoMerge common "cold" part
Dmitry Stogov [Wed, 29 Jul 2020 07:10:37 +0000 (10:10 +0300)]
Merge common "cold" part

4 years agoImplement 'Saner Numeric Strings' RFC:
George Peter Banyard [Wed, 29 Jul 2020 01:51:09 +0000 (02:51 +0100)]
Implement 'Saner Numeric Strings' RFC:

RFC: https://wiki.php.net/rfc/saner-numeric-strings

This removes the -1 allow_error mode from is_numeric_string functions and replaces it by
a trailing boolean out argument to preserve BC in a couple of places.

Most of the changes can be resumed to "numeric" strings which emitted a E_NOTICE now emit
a E_WARNING and "numeric" strings which emitted a E_WARNING now throw a TypeError.

This mostly affects:
 - String offsets
 - Arithmetic operations
 - Bitwise operations

Closes GH-5762

4 years agoPermit trailing whitespace in numeric strings
Andrea Faulds [Wed, 24 Jun 2020 13:05:58 +0000 (15:05 +0200)]
Permit trailing whitespace in numeric strings

This is part 1 of the 'Saner Numeric Strings' RFC:
https://wiki.php.net/rfc/saner-numeric-strings

4 years agoFixed incorrect reuse of exit_point
Dmitry Stogov [Tue, 28 Jul 2020 20:31:58 +0000 (23:31 +0300)]
Fixed incorrect reuse of exit_point

4 years agoRefactor user streams to use ZPP class check
George Peter Banyard [Mon, 20 Jul 2020 12:47:35 +0000 (13:47 +0100)]
Refactor user streams to use ZPP class check

Closes GH-5876

4 years agoCheck for EG(exception) after leaving function frame
Dmitry Stogov [Tue, 28 Jul 2020 16:03:05 +0000 (19:03 +0300)]
Check for EG(exception) after leaving function frame

4 years agoPrevent incorrect optimization
Dmitry Stogov [Tue, 28 Jul 2020 16:02:08 +0000 (19:02 +0300)]
Prevent incorrect optimization

4 years agoFix UNKNOWN default values in ext/mbstring and ext/gd
Máté Kocsis [Mon, 18 May 2020 18:32:21 +0000 (20:32 +0200)]
Fix UNKNOWN default values in ext/mbstring and ext/gd

Closes GH-5598

4 years agoCheck for shm_open() in libroot to support Haiku
David Carlier [Sat, 25 Jul 2020 17:15:54 +0000 (17:15 +0000)]
Check for shm_open() in libroot to support Haiku

Resides on libroot (system runtime) on this platform.

Closes GH-5892.

4 years agoFix typo in test
Nikita Popov [Tue, 28 Jul 2020 13:39:22 +0000 (15:39 +0200)]
Fix typo in test

4 years agoImplement Shorter Attribute Syntax
Theodore Brown [Thu, 2 Jul 2020 15:56:21 +0000 (09:56 -0600)]
Implement Shorter Attribute Syntax

RFC: https://wiki.php.net/rfc/shorter_attribute_syntax

Closes GH-5796.

Co-authored-by: Martin Schröder <m.schroeder2007@gmail.com>
4 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Tue, 28 Jul 2020 12:02:25 +0000 (14:02 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix #79806: realpath() erroneously resolves link to link

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Tue, 28 Jul 2020 12:00:08 +0000 (14:00 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix #79806: realpath() erroneously resolves link to link

4 years agoFix #79806: realpath() erroneously resolves link to link
Christoph M. Becker [Tue, 28 Jul 2020 09:22:57 +0000 (11:22 +0200)]
Fix #79806: realpath() erroneously resolves link to link

After resolving reparse points, the path still may be a reparse point;
in that case we have to resolve that reparse point as well.

4 years agoMove asserts to better places
Dmitry Stogov [Tue, 28 Jul 2020 10:38:43 +0000 (13:38 +0300)]
Move asserts to better places

4 years agoMerge branch 'master' of git.php.net:/php-src
Côme Chilliet [Tue, 28 Jul 2020 08:32:03 +0000 (10:32 +0200)]
Merge branch 'master' of git.php.net:/php-src

* 'master' of git.php.net:/php-src:
  Replace ZEND_JIT_TRACE_MAX_EXIT_COUNTERS constant by opcache.jit_max_exit_counters configuration directive
  Fix use-after-free when nullsafe used with constant LHS

4 years agoMerge branch 'PHP-7.4'
Côme Chilliet [Tue, 28 Jul 2020 08:29:14 +0000 (10:29 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Updated NEWS
  fix memory leaks in ext/ldap/ldap.c
  fix memory leaks in ext/ldap/ldap.c

4 years agoUpdated NEWS
Côme Chilliet [Tue, 28 Jul 2020 08:28:31 +0000 (10:28 +0200)]
Updated NEWS

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Côme Chilliet [Tue, 28 Jul 2020 08:27:52 +0000 (10:27 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  fix memory leaks in ext/ldap/ldap.c

4 years agofix memory leaks in ext/ldap/ldap.c
Paweł Tomulik [Mon, 13 Jul 2020 04:19:34 +0000 (06:19 +0200)]
fix memory leaks in ext/ldap/ldap.c

4 years agofix memory leaks in ext/ldap/ldap.c
Paweł Tomulik [Fri, 10 Jul 2020 19:55:42 +0000 (21:55 +0200)]
fix memory leaks in ext/ldap/ldap.c

4 years agoReplace ZEND_JIT_TRACE_MAX_EXIT_COUNTERS constant by opcache.jit_max_exit_counters...
Dmitry Stogov [Tue, 28 Jul 2020 08:18:18 +0000 (11:18 +0300)]
Replace ZEND_JIT_TRACE_MAX_EXIT_COUNTERS constant by opcache.jit_max_exit_counters configuration directive

4 years agoFix use-after-free when nullsafe used with constant LHS
Nikita Popov [Tue, 28 Jul 2020 07:48:13 +0000 (09:48 +0200)]
Fix use-after-free when nullsafe used with constant LHS

Fixes oss-fuzz #24436.

4 years agoAvoid redundand EX(opline) initialization
Dmitry Stogov [Tue, 28 Jul 2020 01:16:16 +0000 (04:16 +0300)]
Avoid redundand EX(opline) initialization

4 years agoAlways record ZEND_JIT_TRACE_START and ZEND_JIT_TRACE_END
Dmitry Stogov [Tue, 28 Jul 2020 00:23:28 +0000 (03:23 +0300)]
Always record ZEND_JIT_TRACE_START and ZEND_JIT_TRACE_END

4 years agoUpdate abstarct stack before guard to keep proper type in side trace
Dmitry Stogov [Mon, 27 Jul 2020 21:14:28 +0000 (00:14 +0300)]
Update abstarct stack before guard to keep proper type in side trace

4 years agoFixed incorrect side exit opline of "fake" init_fcall guard
Dmitry Stogov [Mon, 27 Jul 2020 20:27:07 +0000 (23:27 +0300)]
Fixed incorrect side exit opline of "fake" init_fcall guard

4 years agoConsolidate Parameter Names For ext/simplexml
Benjamin Eberlei [Mon, 27 Jul 2020 17:32:00 +0000 (19:32 +0200)]
Consolidate Parameter Names For ext/simplexml

Co-authored-by: Thomas Weinert <thomas@weinert.info>
4 years agoConsolidate Parameter Names For ext/dom
Benjamin Eberlei [Mon, 27 Jul 2020 17:31:25 +0000 (19:31 +0200)]
Consolidate Parameter Names For ext/dom

Co-authored-by: Thomas Weinert <thomas@weinert.info>
4 years agoCorrect assertion
Dmitry Stogov [Mon, 27 Jul 2020 18:53:58 +0000 (21:53 +0300)]
Correct assertion

4 years agoFixed incorrect abstract stack size calculation
Dmitry Stogov [Mon, 27 Jul 2020 18:11:07 +0000 (21:11 +0300)]
Fixed incorrect abstract stack size calculation

4 years agoRemove unused func_info variable
Nikita Popov [Mon, 27 Jul 2020 16:40:51 +0000 (18:40 +0200)]
Remove unused func_info variable

4 years agoAutomatically enable DASM_CHECKS in debug mode
Nikita Popov [Mon, 27 Jul 2020 13:56:49 +0000 (15:56 +0200)]
Automatically enable DASM_CHECKS in debug mode

4 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Mon, 27 Jul 2020 15:53:23 +0000 (17:53 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Revert "Fix #79806: realpath() erroneously resolves link to link"

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Mon, 27 Jul 2020 15:51:39 +0000 (17:51 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Revert "Fix #79806: realpath() erroneously resolves link to link"

4 years agoRevert "Fix #79806: realpath() erroneously resolves link to link"
Christoph M. Becker [Mon, 27 Jul 2020 15:50:41 +0000 (17:50 +0200)]
Revert "Fix #79806: realpath() erroneously resolves link to link"

This reverts commit d5b59b4303642adac91df2c93969a72bc0f5fa7d.

4 years agoRemove unused fields
Dmitry Stogov [Mon, 27 Jul 2020 14:31:02 +0000 (17:31 +0300)]
Remove unused fields

4 years agoMore accurate checks to eliminate reloading
Dmitry Stogov [Mon, 27 Jul 2020 14:22:03 +0000 (17:22 +0300)]
More accurate checks to eliminate reloading

4 years agoFix verify type jit for complex type masks
Nikita Popov [Mon, 27 Jul 2020 13:52:43 +0000 (15:52 +0200)]
Fix verify type jit for complex type masks

We should not try to check things like MAY_BE_CALLABLE in the fast
path, because those aren't real types. This is only actively wrong
for the concrete_type case, for the mask case it just uses an
unnecessarily large immediate.

4 years agoEmit diagnostic on dasm_link() failure
Nikita Popov [Mon, 27 Jul 2020 13:26:11 +0000 (15:26 +0200)]
Emit diagnostic on dasm_link() failure

4 years ago[skip ci] Add zend.exception_string_param_max_len to UPGRADING
Tyson Andre [Mon, 27 Jul 2020 13:39:24 +0000 (09:39 -0400)]
[skip ci] Add zend.exception_string_param_max_len to UPGRADING

For GH-5769 (mentioned in 07db64156e180c30daa5ab5d41ed72f9bba77e6d)

4 years agoProperly cleanup in case of abort because too many functions in single trace.
Dmitry Stogov [Mon, 27 Jul 2020 13:37:15 +0000 (16:37 +0300)]
Properly cleanup in case of abort because too many functions in single trace.

4 years agoMention that an API bump must be done with RC1
Derick Rethans [Mon, 27 Jul 2020 13:15:06 +0000 (14:15 +0100)]
Mention that an API bump must be done with RC1

It's okay to change the API change up until the first release candidate only,
and it may not be changed afterwards.

There is a discussion at https://github.com/php/php-src/pull/4470/files that
never resulted in a fix.

/cc @sgolemon @carusogabriel

4 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Mon, 27 Jul 2020 13:11:39 +0000 (15:11 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix #79806: realpath() erroneously resolves link to link

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Mon, 27 Jul 2020 13:10:11 +0000 (15:10 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix #79806: realpath() erroneously resolves link to link

4 years agoFix #79806: realpath() erroneously resolves link to link
Christoph M. Becker [Wed, 15 Jul 2020 16:37:27 +0000 (18:37 +0200)]
Fix #79806: realpath() erroneously resolves link to link

After resolving reparse points, the path still may be a reparse point;
in that case we have to resolve that reparse point as well.

4 years agoJIT internal functions with return type in debug mode
Nikita Popov [Mon, 27 Jul 2020 13:01:29 +0000 (15:01 +0200)]
JIT internal functions with return type in debug mode

The return type check is just a debug assertion, it's okay if it
is not performed in JIT mode. We already don't perform all the
argument validation in that case. Just disable the one test that
checks for this.

This removes an annoying discrepancy between debug&release mode.

4 years agoPrevent setting of incorrect continuation counters
Dmitry Stogov [Mon, 27 Jul 2020 11:45:02 +0000 (14:45 +0300)]
Prevent setting of incorrect continuation counters

4 years agoFix microtime() test
Máté Kocsis [Mon, 27 Jul 2020 11:14:21 +0000 (13:14 +0200)]
Fix microtime() test

4 years agoLast pass of 'More consistent parameter names for date/time functions'
Derick Rethans [Mon, 27 Jul 2020 10:42:13 +0000 (11:42 +0100)]
Last pass of 'More consistent parameter names for date/time functions'

4 years agoFixed incorrect reference counting (we shouldn't skip ADDREF for IS_CV result)
Dmitry Stogov [Mon, 27 Jul 2020 10:18:34 +0000 (13:18 +0300)]
Fixed incorrect reference counting (we shouldn't skip ADDREF for IS_CV result)

4 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Mon, 27 Jul 2020 09:56:52 +0000 (11:56 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix #77932: File extensions are case-sensitive

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Mon, 27 Jul 2020 09:54:38 +0000 (11:54 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix #77932: File extensions are case-sensitive

4 years agoFix #77932: File extensions are case-sensitive
Christoph M. Becker [Mon, 27 Jul 2020 08:13:52 +0000 (10:13 +0200)]
Fix #77932: File extensions are case-sensitive

The file extension to mime type mapping *must* not depend on the file
extension's case for case-insensitive file systems, and *should* not
for case-sensitive file systems.

4 years agoFix null pointer deref in compile_return()
Nikita Popov [Mon, 27 Jul 2020 08:27:26 +0000 (10:27 +0200)]
Fix null pointer deref in compile_return()

Fixes oss-fuzz #24387.

4 years agoAdd AST export support for nullsafe operator
Nikita Popov [Mon, 27 Jul 2020 08:17:19 +0000 (10:17 +0200)]
Add AST export support for nullsafe operator

Fixes oss-fuzz #24403 and variants.

4 years agotype in comment
Dmitry Stogov [Mon, 27 Jul 2020 08:13:23 +0000 (11:13 +0300)]
type in comment

4 years agoFixed memory leaks
Dmitry Stogov [Mon, 27 Jul 2020 07:46:58 +0000 (10:46 +0300)]
Fixed memory leaks

4 years agoAnother pass of improving ext/date argument names
Derick Rethans [Sun, 26 Jul 2020 09:38:53 +0000 (10:38 +0100)]
Another pass of improving ext/date argument names

4 years agoMerge branch 'PHP-7.4'
Derick Rethans [Sun, 26 Jul 2020 09:09:27 +0000 (10:09 +0100)]
Merge branch 'PHP-7.4'

4 years agoPHP-7.4 is 7.4.10-dev now
Derick Rethans [Sun, 26 Jul 2020 09:08:52 +0000 (10:08 +0100)]
PHP-7.4 is 7.4.10-dev now

4 years ago[RFC] Make string length for getTraceAsString() configurable
Tyson Andre [Thu, 25 Jun 2020 13:44:12 +0000 (09:44 -0400)]
[RFC] Make string length for getTraceAsString() configurable

Add a `zend.exception_string_param_max_len` ini setting.
(same suffix as `log_errors_max_len`)

Allow values between 0 and 1000000 bytes.
For example, with zend.exception_string_param_max_len=0,
"" would represent the empty string, and "..." would represent something
longer than the empty string.
Previously, this was hardcoded as exactly 15 bytes.

Discussion: https://externals.io/message/110717

Closes GH-5769

4 years agoCleanup argument handling in ext/reflection
Máté Kocsis [Fri, 24 Jul 2020 08:46:37 +0000 (10:46 +0200)]
Cleanup argument handling in ext/reflection

Closes GH-5850

4 years agoSupport class+mask union for internal argument
Nikita Popov [Fri, 24 Jul 2020 14:39:16 +0000 (16:39 +0200)]
Support class+mask union for internal argument

4 years agoMore consistent parameter names for date/time functions
Derick Rethans [Fri, 24 Jul 2020 10:39:46 +0000 (11:39 +0100)]
More consistent parameter names for date/time functions

4 years agoResult of branching opcode in side trace is unknown
Dmitry Stogov [Fri, 24 Jul 2020 10:26:03 +0000 (13:26 +0300)]
Result of branching opcode in side trace is unknown

4 years agoFix bug #79108
Nikita Popov [Fri, 24 Jul 2020 08:16:38 +0000 (10:16 +0200)]
Fix bug #79108

Don't expose references in debug_backtrace() or exception traces.
This is regardless of whether the argument is by-reference or not.

As a side-effect of this change, exception traces may now acquire
the interior value of a reference, which may be unexpected for
some internal functions. This is what necessitated the change in
the spl_array sort implementation.

4 years agoValidate collator earlier during sort
Nikita Popov [Fri, 24 Jul 2020 09:58:10 +0000 (11:58 +0200)]
Validate collator earlier during sort

Check this once before the sort, instead of on every compare.
Also directly store the UCollator to make things more obvious.

4 years agoAvoid UNKNOWN default in PDO::query()
Nikita Popov [Fri, 24 Jul 2020 09:43:27 +0000 (11:43 +0200)]
Avoid UNKNOWN default in PDO::query()