1
0
mirror of https://github.com/php/php-src.git synced 2026-04-23 07:58:20 +02:00
Commit Graph

110320 Commits

Author SHA1 Message Date
Dmitry Stogov 0ff71aead1 Fixed crash 2019-01-25 11:53:31 +03:00
Nikita Popov 24085b187a Remove unused prototype in mbstring
Reported by legale.
2019-01-24 16:11:35 +01:00
Andreas Treichel b1e9c73b27 Allow strip_tags with an array of allowed tagnames 2019-01-24 15:56:32 +01:00
Dmitry Stogov bf774d4d75 Reduce amount of updated memory 2019-01-24 18:01:24 +03:00
Dmitry Stogov 4887896e21 Fixed crash 2019-01-24 18:00:45 +03:00
Nikita Popov 5e4c6dec12 Merge branch 'PHP-7.3' 2019-01-24 15:14:09 +01:00
Nikita Popov 3c98c2d0cb Fixed bug #77514 2019-01-24 15:13:49 +01:00
Dmitry Stogov f80b1b0c56 Delay hash table allocation 2019-01-24 16:01:04 +03:00
Dmitry Stogov ab9a9a6b20 Disallow PHP startup, in case some ext ext/standard sub-module is not initialized sucessfully. 2019-01-24 15:59:33 +03:00
Nikita Popov 2baae68961 Merge branch 'PHP-7.3' 2019-01-24 13:45:48 +01:00
Nikita Popov d460e06cb9 Merge branch 'PHP-7.2' into PHP-7.3 2019-01-24 13:45:40 +01:00
Nikita Popov 08c5679380 Merge remote-tracking branch 'php-src/PHP-7.2' into PHP-7.2 2019-01-24 13:45:27 +01:00
Nikita Popov e7089a830a Merge branch 'PHP-7.3' 2019-01-24 13:40:54 +01:00
Nikita Popov e926dc9305 Merge branch 'PHP-7.2' into PHP-7.3 2019-01-24 13:40:36 +01:00
Nikita Popov cce2e33c84 Revert "Prefix error_code with underscore in FastZPP implementation"
This reverts commit 6305119a51.

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.
2019-01-24 13:36:47 +01:00
Christoph M. Becker 6f3880c62f Improve wording
As suggested by Tom Sommer[1].

[1] <https://github.com/php/php-src/commit/8a4c2f16217fb8f8d098355f3943f31e82bcfd71#r32037340>
2019-01-24 13:09:18 +01:00
Christoph M. Becker d7480bda76 Fix README.RELEASE_PROCESS
According to current practice, and as discussed with other RMs.
2019-01-24 12:41:53 +01:00
Dmitry Stogov fd41b99d58 Merge branch 'PHP-7.3'
* PHP-7.3:
  Fixed bug #77494 (Disabling class causes segfault on member access)
2019-01-24 13:08:00 +03:00
Dmitry Stogov aa9a8dbda3 Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
  Fixed bug #77494 (Disabling class causes segfault on member access)
2019-01-24 13:07:31 +03:00
Dmitry Stogov 73f222d722 Fixed bug #77494 (Disabling class causes segfault on member access) 2019-01-24 13:06:36 +03:00
Nikita Popov 1d984cc707 Merge branch 'PHP-7.3' 2019-01-24 10:58:24 +01:00
Nikita Popov e0f97ae7ec Merge branch 'PHP-7.2' into PHP-7.3 2019-01-24 10:57:45 +01:00
Nikita Popov 526344aa5e 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.
2019-01-24 10:56:04 +01:00
Gabriel Caruso 04723f2101 Make more tests run os MacOS 2019-01-22 19:17:27 -02:00
Nikita Popov 89a4c172e2 Remove the "o" serialization format
We never generate the "o" format during serialization, so let's not
keep this unnecessary attack surface around.
2019-01-22 18:09:49 +01:00
Christoph M. Becker 0daebf9a01 Merge branch 'PHP-7.3'
* PHP-7.3:
  Prepare main branch for PHP 7.3.3
2019-01-22 14:06:34 +01:00
Christoph M. Becker 19a9a6ba24 Prepare main branch for PHP 7.3.3 2019-01-22 14:04:03 +01:00
Nikita Popov d3e5a2487f Merge branch 'PHP-7.3' 2019-01-22 12:28:44 +01:00
Nikita Popov 76760901fa Fixed bug #77287
There may be an EXT_NOP opcode before the parameter list, we should
skip over it.
2019-01-22 12:15:06 +01:00
Nikita Popov a50198d0fe 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.
2019-01-22 11:12:04 +01:00
Nikita Popov 50ddff94b9 Make tokenizer test robust against token renumbering 2019-01-22 11:12:04 +01:00
Dmitry Stogov a3503f0402 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.
2019-01-22 02:11:50 +03:00
Dmitry Stogov 8cb1ae92e6 Use SSA instead of bogus reverse linear scan. 2019-01-22 01:33:35 +03:00
Dmitry Stogov 960f922ed2 Fixed odd ROPE_ADD instruction placement. 2019-01-21 23:34:09 +03:00
Christoph M. Becker d0092c2125 [ci skip] List FFI extension 2019-01-21 20:24:16 +01:00
Dmitry Stogov 6c983c6221 Use ZEND_FUNC_FREE_LOOP_VAR flag to avoid useless iterations. 2019-01-21 22:18:07 +03:00
Christoph M. Becker 467d8b3ff7 [ci skip] Add opcache.preload directive 2019-01-21 17:55:53 +01:00
Dmitry Stogov abd0651020 Avoid double live ranges recalculation. 2019-01-21 18:17:10 +03:00
Christoph M. Becker 36c825575e [ci skip] Note preloading and ext/ffi in UPGRADING 2019-01-21 15:58:02 +01:00
Christoph M. Becker 3815a03117 Remove superfluous variable
This has been missed when libsqlite3 has been unbundled.
2019-01-21 15:32:34 +01:00
Dmitry Stogov 97ccafd4c6 Live ranges construction optimization 2019-01-21 17:25:24 +03:00
Christoph M. Becker 570d4311b6 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).
2019-01-21 14:01:34 +01:00
Nikita Popov 3269e88468 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.
2019-01-21 11:47:27 +01:00
George Wang 276d3a7d15 Merge branch 'PHP-7.3' 2019-01-20 15:11:58 -05:00
George Wang 6a0a600176 Merge branch 'PHP-7.2' into PHP-7.3 2019-01-20 15:11:37 -05:00
George Wang 66d72377d0 Checkin LiteSpeed SAPI 7.2. 2019-01-20 15:10:19 -05:00
Anatol Belski 52f81c9551 Merge branch 'PHP-7.3'
* PHP-7.3:
  Update NEWS [ci skip]
  Update NEWS [ci skip]
2019-01-20 16:00:46 +01:00
Anatol Belski a1b1c53d13 Update NEWS [ci skip] 2019-01-20 16:00:25 +01:00
Anatol Belski 969e57c7ac Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
  Update NEWS [ci skip]
2019-01-20 15:59:08 +01:00
Anatol Belski d978590c74 Update NEWS [ci skip] 2019-01-20 15:58:19 +01:00