1
0
mirror of https://github.com/php/php-src.git synced 2026-04-29 11:13:36 +02:00
Commit Graph

17924 Commits

Author SHA1 Message Date
Florian Sowade 8dabbda8bc Don’t reset func in zend_closure_internal_handler
The pointer is used in _zend_observe_fcall_begin().
2022-11-02 11:46:43 +01:00
Dmitry Stogov 482ae71fda Fix memory leak 2022-10-31 12:20:28 +03:00
Ilija Tovilo 1d6b32f65c Remove unnecessary ast eval bailout
We can just reset the filename_override to NULL in php_request_shutdown.

Closes GH-9805
2022-10-27 10:54:59 +02:00
Florian Sowade b9474bf385 Don’t report arginfo violations on fake closures (#9823) 2022-10-26 12:21:41 +02:00
George Peter Banyard cb3adf351d Fix OpCache build after 0b0259a418
The intersection type needs to be marked as being allocated on the arena otherwise zend_persist_type() tries to free it and corrupts the Zend MM Heap

Also we only need to allocate the space for a list of size 1 and not the whole length of the intersection type
2022-10-24 15:17:26 +01:00
George Peter Banyard 8c2df899d0 Revert 01eb06a0de
We do not need this shim anymore since it is converted to a proper DNF type at compile time
2022-10-24 11:41:42 +01:00
George Peter Banyard 0b0259a418 Convert Implicitly nullable pure intersection types to DNF
If we don't then Reflection would give us a ReflectionIntersectionType even if the type is currently displayed as (X&Y)|null
2022-10-24 11:39:54 +01:00
David Carlier dbedb69f6a Merge branch 'PHP-8.1' into PHP-8.2 2022-10-23 00:46:46 +01:00
David Carlier fe06c5ef60 Merge branch 'PHP-8.0' into PHP-8.1 2022-10-23 00:46:25 +01:00
Adam Saponara 45e224cf51 Fix GH-9709: Guard against current_execute_data==NULL in is_handle_exception_set 2022-10-23 00:46:05 +01:00
Arnaud Le Blanc cfd5fb98e4 Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  [ci skip] NEWS
  [ci skip] NEWS
  Fix compilation warning
  Fix crash when memory limit is exceeded during generator initialization
2022-10-22 10:44:55 +02:00
Arnaud Le Blanc ebe58459aa Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  [ci skip] NEWS
  Fix compilation warning
  Fix crash when memory limit is exceeded during generator initialization
2022-10-22 10:44:06 +02:00
Arnaud Le Blanc 26c7c82d32 Fix crash when memory limit is exceeded during generator initialization 2022-10-22 10:40:28 +02:00
Dmitry Stogov eecbb60db6 Fix memory leak
Fixes oss-fuzz #52479
2022-10-17 15:08:21 +03:00
Arnaud Le Blanc a1295cbfce Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  [ci skip] NEWS
  [ci skip] NEWS
  Restore extra_named_params when restoring frozen call stack
2022-10-16 12:45:41 +02:00
Arnaud Le Blanc 2831e0c624 Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  [ci skip] NEWS
  Restore extra_named_params when restoring frozen call stack
2022-10-16 12:43:34 +02:00
Arnaud Le Blanc 86e1fea39a Restore extra_named_params when restoring frozen call stack 2022-10-16 12:40:09 +02:00
Ben Ramsey 865161af33 PHP-8.1 is now for PHP 8.1.13-dev 2022-10-11 19:47:00 -04:00
George Peter Banyard 01eb06a0de Follow-up fix for GH-9655
Type needs to be rendered as a DNF type and not X&Y|null
2022-10-04 14:24:51 +01:00
HypeMC 279ffdb598 Fix GH-9655: Allow pure intersection types to be implicitly nullable
Closes GH-9659
2022-10-03 11:02:52 +01:00
George Peter Banyard c801076d8b Fix GH-9556 "iterable" alias "array|Traversable" breaks PHP 8.1 code
Closes GH-9558
2022-09-30 12:49:15 +01:00
George Peter Banyard 74ae498a4b Move object/class redundancy check into union type handling
As such a redundancy can only happen for union types
2022-09-30 12:48:56 +01:00
George Peter Banyard 0d19ae4068 Add support for binary and octal number prefixes for INI settings
Closes GH-9560
2022-09-30 11:56:39 +01:00
Dmitry Stogov 94b8c2da9f Fixed type inference
Fixes oss-fuzz #51640
2022-09-26 12:19:12 +03:00
Dmitry Stogov c083efb779 Fix memory leak
Fixes oss-fuzz #51622
2022-09-26 12:02:03 +03:00
Dmitry Stogov 5ad8b3bcfa Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Fix memory leak
2022-09-26 11:47:32 +03:00
Dmitry Stogov b20568d4fa Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  Fix memory leak
2022-09-26 11:44:38 +03:00
Dmitry Stogov 8258b7731b Fix memory leak
Fixes oss-fuzz #51622
2022-09-26 11:43:38 +03:00
Patrick Allaert 18cd80c327 Fixed undefined macros warnings 2022-09-22 13:17:02 +02:00
Dmitry Stogov 7496a400aa Fix SSA construction and type inference
Fixes oss-fuzz #51476
2022-09-19 15:45:34 +03:00
Dmitry Stogov 33918f999d Fixed warning 2022-09-19 13:12:49 +03:00
Dmitry Stogov c0d49b7c7d Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Fix memory leak
2022-09-19 13:04:09 +03:00
Dmitry Stogov 8a1f7fa721 Fix memory leak
Fixes oss-fuzz #51451
2022-09-19 13:03:24 +03:00
Ilija Tovilo fe0eaf107a Fix UB pointer arithmetics on NULL
Closes GH-9559
2022-09-16 18:24:39 +02:00
Ilija Tovilo 7e860eaef0 Don't throw CompileError after parsing
Aborting parsing is not safe, a fatal error is necessary.

See https://github.com/php/php-src/commit/b9f7123c5e4ccdc3c381ab949ff01e3c14f3465c
2022-09-14 23:05:41 +02:00
Bob Weinand 5a0b68bed7 Revert "Store default object handlers alongside the class entry"
This reverts commit 9e6eab3c13.

Reverted along a01dd9feda.
2022-09-14 11:18:14 +02:00
Bob Weinand a01dd9feda Revert "Port all internally used classes to use default_object_handlers"
This reverts commit 94ee4f9834.

The commit was a bit too late to be included in PHP 8.2 RC1. Given it's a massive ABI break, we decide to postpone the change to PHP 8.3.
2022-09-14 11:13:23 +02:00
Sara Golemon 559da529a0 Bump for 8.0.25 2022-09-13 23:46:26 +00:00
Patrick Allaert 0f575aa698 PHP-8.1 is now for PHP 8.1.12-dev 2022-09-13 23:09:47 +02:00
George Peter Banyard 5bfceae770 Only check classes in intersection type if the type might be valid
Closes GH-9522
2022-09-13 11:10:32 +01:00
Ilija Tovilo 09aa27cc09 Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Fix ZEND_RC_MOD_CHECK() for thread local ini parser strings
2022-09-12 23:33:03 +02:00
Ilija Tovilo 9af98cd465 Fix ZEND_RC_MOD_CHECK() for thread local ini parser strings 2022-09-12 23:31:26 +02:00
Ilija Tovilo 08b7539583 Fix syntax error when dnf type in parens after readonly
Fixes GH-9500
Closes GH-9512
2022-09-11 12:29:29 +02:00
George Peter Banyard 6c4d24e4f0 Update cache slot size calculation in compact_literals.c 2022-09-10 13:20:59 +01:00
George Peter Banyard c70a8281e3 Use DNF intersection type check also for simple intersection types 2022-09-10 11:39:22 +01:00
George Peter Banyard 9286101da4 Fix GH-9516: (A&B)|D as a param should allow AB or D. Not just A.
The issue was that we didn't compute enough cache slots for DNF types.
Nor progressed throught the CE's in the cache slot, meaning we were only checking if the value passed
satisfied the first type of the nested intersection type.
2022-09-10 11:34:32 +01:00
George Peter Banyard 80315edd58 Introduce PROGRESS_CACHE_SLOT() macro 2022-09-10 11:34:11 +01:00
Ilija Tovilo 580c29e1a2 Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Fix lsp error in eval'd code referring to incorrect class for static type
2022-09-08 10:54:02 +02:00
Ilija Tovilo 15ee9d2686 Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  Fix lsp error in eval'd code referring to incorrect class for static type
2022-09-08 10:53:45 +02:00
Ilija Tovilo d5373eac46 Fix lsp error in eval'd code referring to incorrect class for static type
Fixes GH-9407
Closes GH-9471
2022-09-08 10:52:27 +02:00