1
0
mirror of https://github.com/php/php-src.git synced 2026-04-26 17:38:14 +02:00
Commit Graph

119783 Commits

Author SHA1 Message Date
Nikita Popov dc1a6dc0de Remove unused func_info variable 2020-07-27 18:40:51 +02:00
Nikita Popov d4c30ff99b Automatically enable DASM_CHECKS in debug mode 2020-07-27 18:40:03 +02:00
Christoph M. Becker 592f70bc46 Merge branch 'PHP-7.4'
* PHP-7.4:
  Revert "Fix #79806: realpath() erroneously resolves link to link"
2020-07-27 17:53:23 +02:00
Christoph M. Becker f02507469d Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
  Revert "Fix #79806: realpath() erroneously resolves link to link"
2020-07-27 17:51:56 +02:00
Christoph M. Becker 1aeff522b8 Revert "Fix #79806: realpath() erroneously resolves link to link"
This reverts commit d5b59b4303.
2020-07-27 17:50:41 +02:00
Dmitry Stogov b23188962e Remove unused fields 2020-07-27 17:31:02 +03:00
Dmitry Stogov 04c3e3182a More accurate checks to eliminate reloading 2020-07-27 17:22:03 +03:00
Nikita Popov f9f6123941 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.
2020-07-27 15:54:22 +02:00
Nikita Popov e0aa2724c3 Emit diagnostic on dasm_link() failure 2020-07-27 15:54:22 +02:00
Tyson Andre 85d4b560df [skip ci] Add zend.exception_string_param_max_len to UPGRADING
For GH-5769 (mentioned in 07db64156e)
2020-07-27 09:40:24 -04:00
Dmitry Stogov 8d773a768f Properly cleanup in case of abort because too many functions in single trace. 2020-07-27 16:37:15 +03:00
Derick Rethans d66a6ba58a 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
2020-07-27 14:19:21 +01:00
Christoph M. Becker 54e15dcd6f Merge branch 'PHP-7.4'
* PHP-7.4:
  Fix #79806: realpath() erroneously resolves link to link
2020-07-27 15:11:39 +02:00
Christoph M. Becker 85a26fef11 Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
  Fix #79806: realpath() erroneously resolves link to link
2020-07-27 15:10:22 +02:00
Christoph M. Becker d5b59b4303 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.
2020-07-27 15:08:39 +02:00
Nikita Popov 6d97e7f0e9 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.
2020-07-27 15:02:59 +02:00
Dmitry Stogov 52cebf65f8 Prevent setting of incorrect continuation counters 2020-07-27 14:45:02 +03:00
Máté Kocsis f62ec5cf6c Fix microtime() test 2020-07-27 13:14:21 +02:00
Derick Rethans cdc8523300 Last pass of 'More consistent parameter names for date/time functions' 2020-07-27 11:42:13 +01:00
Dmitry Stogov c56c19cec3 Fixed incorrect reference counting (we shouldn't skip ADDREF for IS_CV result) 2020-07-27 13:18:34 +03:00
Christoph M. Becker 041cbec023 Merge branch 'PHP-7.4'
* PHP-7.4:
  Fix #77932: File extensions are case-sensitive
2020-07-27 11:56:52 +02:00
Christoph M. Becker 68aa1329eb Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
  Fix #77932: File extensions are case-sensitive
2020-07-27 11:54:54 +02:00
Christoph M. Becker 6f18d7e2f9 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.
2020-07-27 11:52:18 +02:00
Nikita Popov 08e6c20955 Fix null pointer deref in compile_return()
Fixes oss-fuzz #24387.
2020-07-27 10:27:26 +02:00
Nikita Popov 3b5b288127 Add AST export support for nullsafe operator
Fixes oss-fuzz #24403 and variants.
2020-07-27 10:20:02 +02:00
Dmitry Stogov d9f5c44d5f type in comment 2020-07-27 11:13:23 +03:00
Dmitry Stogov 9aa5967a5f Fixed memory leaks 2020-07-27 10:46:58 +03:00
Derick Rethans f66627abff Another pass of improving ext/date argument names 2020-07-26 10:38:53 +01:00
Derick Rethans 2b66cc95d9 Merge branch 'PHP-7.4' 2020-07-26 10:09:27 +01:00
Derick Rethans 877a351ea8 PHP-7.4 is 7.4.10-dev now 2020-07-26 10:08:52 +01:00
Tyson Andre 07db64156e [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
2020-07-25 09:50:57 -04:00
Máté Kocsis 8664ff7ae1 Cleanup argument handling in ext/reflection
Closes GH-5850
2020-07-24 17:47:42 +02:00
Nikita Popov 1f8a93abaa Support class+mask union for internal argument 2020-07-24 16:40:14 +02:00
Derick Rethans e96e4ac726 More consistent parameter names for date/time functions 2020-07-24 11:49:01 +01:00
Dmitry Stogov 0ef8e0c115 Result of branching opcode in side trace is unknown 2020-07-24 13:26:03 +03:00
Nikita Popov d65d3f5298 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.
2020-07-24 12:23:34 +02:00
Nikita Popov 27ad19c3e8 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.
2020-07-24 11:58:10 +02:00
Nikita Popov 7eec281b5e Avoid UNKNOWN default in PDO::query() 2020-07-24 11:44:47 +02:00
Máté Kocsis 70a3a909cd Add the Z_PARAM_PATH_OR_NULL() and Z_PARAM_ZVAL_OR_NULL() macros 2020-07-24 10:37:35 +02:00
Nikita Popov 0a5b7c81b7 Make nested ternary without parentheses a compile error
This was deprecated in PHP 7.4.
2020-07-24 10:35:42 +02:00
Ilija Tovilo 9bf119832d Implement nullsafe ?-> operator
RFC: https://wiki.php.net/rfc/nullsafe_operator

Closes GH-5619.

Co-authored-by: Nikita Popov <nikita.ppv@gmail.com>
2020-07-24 10:05:03 +02:00
George Wang 293d2f99f1 Address some compiler warnings. 2020-07-23 17:21:24 -04:00
George Wang 78fc12a37a Merge branch 'PHP-7.4' 2020-07-23 16:08:54 -04:00
George Wang 27bd16e71f Merge branch 'PHP-7.3' into PHP-7.4 2020-07-23 15:54:48 -04:00
George Wang 874284d1c9 Merge branch 'PHP-7.2' into PHP-7.3 2020-07-23 15:36:35 -04:00
George Wang c39f5fe94e Security: update to LiteSpeed SAPI v7.7 to address an buffer overflow, and some log message tunings. 2020-07-23 15:35:32 -04:00
Dmitry Stogov bc4201f6b7 Cleanup abstract test usage 2020-07-23 21:38:34 +03:00
Nikita Popov 86882060ab Use zend_call_method in SoapFault::__toString() 2020-07-23 16:45:53 +02:00
Nikita Popov a1ab7bbc3a Simplify user_stream_create_object 2020-07-23 16:20:25 +02:00
Dmitry Stogov b3e51b7675 Allow keeping result of FETCH_DIM_R in CPU register 2020-07-23 17:08:28 +03:00