#
74f15475 |
| 26-Apr-2020 |
Gabriel Caruso |
Use zend_string in zend_check_magic_method implementation
|
#
6f908a0b |
| 23-Apr-2020 |
Gabriel Caruso |
Check Serialization magic methods structure Closes GH-5441
|
#
08c5c69e |
| 17-Apr-2020 |
Nikita Popov |
Remove ZEND_ACC_DTOR flag This is only used in reflection, where doing a simple string check is acceptable. I'm also dropping the "dtor" printing in the reflection dump. Dto
Remove ZEND_ACC_DTOR flag This is only used in reflection, where doing a simple string check is acceptable. I'm also dropping the "dtor" printing in the reflection dump. Dtors are just one of many magic methods, I don't think there's a point in explicitly highlighting them, when the name is already unambiguous.
show more ...
|
#
add8c15a |
| 16-Apr-2020 |
Gabriel Caruso |
Align magic methods' camelCase with documentation Closes GH-5398
|
#
4fb705a0 |
| 14-Apr-2020 |
Nikita Popov |
Add zend_string_concat2 API
|
#
4a935bc2 |
| 14-Apr-2020 |
Nikita Popov |
Always use __invoke callable name for objects The callable name is provided also if it's not callable, in which case it's basically "what it would be if it were callable", which is C
Always use __invoke callable name for objects The callable name is provided also if it's not callable, in which case it's basically "what it would be if it were callable", which is ClassName::__invoke. The current behavior of casting the object to string makes very little sense as this will just throw an exception for most objects.
show more ...
|
#
bac5137e |
| 14-Apr-2020 |
Nikita Popov |
Add zend_create_member_string() API This is a recurring pattern.
|
#
d030ddb2 |
| 09-Apr-2020 |
Nikita Popov |
Export the zend_string_concat3() API
|
#
696ae335 |
| 09-Apr-2020 |
Nikita Popov |
Export API for fetching internal func default Make this functionality available outside reflection.
|
#
c81cf1c7 |
| 07-Apr-2020 |
Nikita Popov |
Assert that arginfo parameter name is present
|
#
b6229fbc |
| 30-Mar-2020 |
Máté Kocsis |
Display nullability in type error messages for internal functions Closes GH-5327
|
#
8fd7f02e |
| 31-Mar-2020 |
Nikita Popov |
Make cast_object handler required Avoid subtle differences in behavior depending on whether the handler is absent or returns FAILURE. If you previously set cast_object to NULL,
Make cast_object handler required Avoid subtle differences in behavior depending on whether the handler is absent or returns FAILURE. If you previously set cast_object to NULL, create a handler that always returns FAILURE instead.
show more ...
|
#
bb6f3740 |
| 24-Feb-2020 |
Máté Kocsis |
Improve argument error messages in ext/standard Closes GH-5198
|
#
9c6e206b |
| 06-Mar-2020 |
Nikita Popov |
Remove NO_ACCESS flag for zend_is_callable() We may add support for fake_scope if necessary.
|
#
53efa1b0 |
| 02-Mar-2020 |
Nikita Popov |
Store aliased name of trait method Currently, trait methods are aliased will continue to use the original function name. In a few places in the codebase, we will try to look up the a
Store aliased name of trait method Currently, trait methods are aliased will continue to use the original function name. In a few places in the codebase, we will try to look up the actual method name instead. However, this does not work if an aliased method is used indirectly (https://bugs.php.net/bug.php?id=69180). I think it would be better to instead actually change the method name to the alias. This is in principle easy: We have to allow function_name to be changed even if op array is otherwise shared (similar to static_variables). This means we need to addref/release the function_name separately, but I don't think there is a performance concern here (especially as everything is usually interned). There is a bit of complication in opcache, where we need to make sure that the function name is released the correct number of times (interning may overwrite the name in the original op_array, but we need to release it as many times as the op_array is shared). Fixes bug #69180. Fixes bug #74939. Closes GH-5226.
show more ...
|
#
960318ed |
| 25-Feb-2020 |
Máté Kocsis |
Change argument error message format Closes GH-5211
|
#
b35b0142 |
| 13-Feb-2020 |
Nikita Popov |
Require all internal functions to have arginfo
|
#
ac0853eb |
| 29-Jan-2020 |
Máté Kocsis |
Make type error messages more consistent Closes GH-5092
|
#
6ee60976 |
| 16-Feb-2020 |
Christoph M. Becker |
Constrain number parameter of numfmt_format to int|float This is inline with similar changes to the math functions. Especially, array to number conversion makes no sense here, and is li
Constrain number parameter of numfmt_format to int|float This is inline with similar changes to the math functions. Especially, array to number conversion makes no sense here, and is likely to hide a programming error. To make that feasible, we introduce the `n` specifier for classic ZPP so we can stick with `zend_parse_method_parameters()`. We also remove a test case, which has been degenerated to a ZPP test.
show more ...
|
#
907ae8d4 |
| 12-Feb-2020 |
Nikita Popov |
Reset required_num_args for disabled functions Otherwise we may get arginfo/zpp mismatch errors.
|
#
429f194f |
| 30-Jan-2020 |
Nikita Popov |
Fix UAF in is_callable() and allocated trampoline By nulling out the function_handler, so it will not get used below. Reuse the existing helper for this purpose.
|
#
12fec7a1 |
| 21-Jan-2020 |
Nikita Popov |
Simplify constant updating for properties Instead of walking up the parent chain, use the scope stored in the property info. This way we only need to walk one list of property infos.
|
#
abf05181 |
| 17-Dec-2019 |
Dmitry Stogov |
Fixed memory leak
|
#
0927af3d |
| 17-Dec-2019 |
Dmitry Stogov |
Fixed memory leaks
|
#
3280209c |
| 11-Dec-2019 |
Dmitry Stogov |
Addirional fix for bug #78918
|