php-src/ext/spl
Nikita Popov 2e218180ef Release call trampolines in zpp fcc
When using zpp 'f' or Z_PARAM_FUNC, if the fcc points to a call
trampoline release it immediately and force zend_call_function
to refetch it. This may require additional callability checks
if __call is used, but avoids the need to carefully free fcc
values in all internal functions -- in some cases this is not
simple, as a type error might be triggered by a later argument
in the same zpp call.

This fixes oss-fuzz #25390.

Closes GH-6073.
2020-09-04 14:23:14 +02:00
..
tests Error promotions in SPL 2020-09-03 19:27:02 +02:00
config.m4 Refactor parts of SPL Dir/SplFileObject 2020-09-03 14:23:18 +02:00
config.w32 Remove HAVE_* for always available extensions 2019-04-14 11:44:12 -03:00
CREDITS Change some permissions from 755 to 644 2018-08-28 23:26:49 +02:00
php_spl_arginfo.h Improve a few parameter names in ext/spl 2020-08-03 00:45:12 +02:00
php_spl.c Release call trampolines in zpp fcc 2020-09-04 14:23:14 +02:00
php_spl.h Remove autoload_running flag 2020-06-10 09:41:58 +02:00
php_spl.stub.php Improve a few parameter names in ext/spl 2020-08-03 00:45:12 +02:00
spl_array_arginfo.h Add more precise type info for stubs 2020-09-01 16:35:56 +02:00
spl_array.c Error promotions in SPL 2020-09-03 19:27:02 +02:00
spl_array.h Remove mention of PHP major version in Copyright headers 2019-09-25 14:51:43 +02:00
spl_array.stub.php Add more precise type info for stubs 2020-09-01 16:35:56 +02:00
spl_directory_arginfo.h Return empty string from SplFileInfo::getPathname() 2020-08-14 11:09:30 +02:00
spl_directory.c Error promotions in SPL 2020-09-03 19:27:02 +02:00
spl_directory.h Remove mention of PHP major version in Copyright headers 2019-09-25 14:51:43 +02:00
spl_directory.stub.php Return empty string from SplFileInfo::getPathname() 2020-08-14 11:09:30 +02:00
spl_dllist_arginfo.h Add more precise type info for stubs 2020-09-01 16:35:56 +02:00
spl_dllist.c Error promotions in SPL 2020-09-03 19:27:02 +02:00
spl_dllist.h Remove mention of PHP major version in Copyright headers 2019-09-25 14:51:43 +02:00
spl_dllist.stub.php Add more precise type info for stubs 2020-09-01 16:35:56 +02:00
spl_engine.c Use zend_dval_to_lval() in spl_offset_convert_to_long() 2020-08-27 14:53:56 +02:00
spl_engine.h Cleanup SPL instantiation code 2020-07-23 16:00:12 +02:00
spl_exceptions.c Remove mention of PHP major version in Copyright headers 2019-09-25 14:51:43 +02:00
spl_exceptions.h Remove mention of PHP major version in Copyright headers 2019-09-25 14:51:43 +02:00
spl_fixedarray_arginfo.h Add more precise type info for stubs 2020-09-01 16:35:56 +02:00
spl_fixedarray.c Error promotions in SPL 2020-09-03 19:27:02 +02:00
spl_fixedarray.h Remove mention of PHP major version in Copyright headers 2019-09-25 14:51:43 +02:00
spl_fixedarray.stub.php Add more precise type info for stubs 2020-09-01 16:35:56 +02:00
spl_functions.c Fix expression warnings and break warnings 2020-06-07 10:41:11 +02:00
spl_functions.h Generate methods entries from stubs for ext/spl 2020-04-25 23:54:56 +02:00
spl_heap_arginfo.h Add more precise type info for stubs 2020-09-01 16:35:56 +02:00
spl_heap.c Error promotions in SPL 2020-09-03 19:27:02 +02:00
spl_heap.h Remove mention of PHP major version in Copyright headers 2019-09-25 14:51:43 +02:00
spl_heap.stub.php Add more precise type info for stubs 2020-09-01 16:35:56 +02:00
spl_iterators_arginfo.h Add more precise type info for stubs 2020-09-01 16:35:56 +02:00
spl_iterators.c Error promotions in SPL 2020-09-03 19:27:02 +02:00
spl_iterators.h Define Stringable with __toString():string method 2020-03-02 15:25:32 +01:00
spl_iterators.stub.php Add more precise type info for stubs 2020-09-01 16:35:56 +02:00
spl_observer_arginfo.h Add more precise type info for stubs 2020-09-01 16:35:56 +02:00
spl_observer.c Use a dedicated method for MultipleIterator::countIterators() 2020-08-13 14:44:03 +02:00
spl_observer.h Remove mention of PHP major version in Copyright headers 2019-09-25 14:51:43 +02:00
spl_observer.stub.php Add more precise type info for stubs 2020-09-01 16:35:56 +02:00