History log of /PHP-8.3/ext/spl/php_spl.c (Results 26 – 50 of 311)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 15846ff1 17-Jun-2020 Nikita Popov

Add ZVAL_OBJ_COPY macro

For the common ZVAL_OBJ + GC_ADDREF pattern.
This mirrors the existing ZVAL_STR_COPY API.


# 94df2f69 10-Jun-2020 Nikita Popov

Fix bug #65006

The "callable name" may be the same for multiple distinct callables.
The code already worked around this for the case of instance methods,
but there are other cases in

Fix bug #65006

The "callable name" may be the same for multiple distinct callables.
The code already worked around this for the case of instance methods,
but there are other cases in which callable names clash, such as
the use of self:: reported in the referenced bug.

Rather than trying to generate a unique name for callables, compare
the content of the alfi structures. This is less efficient if there
are many autoload functions, but autoload *registration* does not
need to be particularly efficient.

As a side-effect, this no longer permits unregistering non-callables.

show more ...


# 034741f6 10-Jun-2020 Nikita Popov

Simplify spl_autoload_perform() implementation

And convert alfi.obj from zval to zend_object*.


# 097043db 10-Jun-2020 Nikita Popov

Fix called scope assignment in autoloader

We should use the scope specified in the spl_autoload_register()
call, not whatever LSB scope just so happens to be active at the
time of th

Fix called scope assignment in autoloader

We should use the scope specified in the spl_autoload_register()
call, not whatever LSB scope just so happens to be active at the
time of the autoloader call.

show more ...


# e0e4a618 10-Jun-2020 Nikita Popov

Remove autoload_running flag

This was only used to decide between a hash clean and a hash
destroyed in spl_autoload_remove(). But now that
spl_autoload_functions() no longer distingu

Remove autoload_running flag

This was only used to decide between a hash clean and a hash
destroyed in spl_autoload_remove(). But now that
spl_autoload_functions() no longer distinguishes between NULL and
an empty array here, there's really no need to try and destroy
the hashtable here.

show more ...


# 5b59d491 09-Jun-2020 Nikita Popov

Cleanup SPL autoload implementation

Replace EG(autoload_func) with a C level zend_autoload hook.
This avoids having to do one indirection through PHP function
calls. The need for EG(

Cleanup SPL autoload implementation

Replace EG(autoload_func) with a C level zend_autoload hook.
This avoids having to do one indirection through PHP function
calls. The need for EG(autoload_func) was a leftover from the
__autoload() implementation.

Additionally, drop special-casing of spl_autoload(), and instead
register it just like any other autoloading function. This fixes
bug #71236 as a side-effect.

Finally, change spl_autoload_functions() to always return an array.
The distinction between false and an empty array no longer makes
sense here.

Closes GH-5696.

show more ...


# 3b8d26ac 09-Jun-2020 Nikita Popov

Remove obsolete __lambda_func handling

This is a leftover from create_function() support.


# 2302b14a 26-Mar-2020 George Peter Banyard

Use ZPP callable check for spl_autoload_register.

This makes it always throw a TypeError, moreover this makes the
error message consistent.

Added a warning mentioning that the s

Use ZPP callable check for spl_autoload_register.

This makes it always throw a TypeError, moreover this makes the
error message consistent.

Added a warning mentioning that the second parameter is now ignored
when passed false.

Closes GH-5301

show more ...


# 650da66e 03-May-2020 Máté Kocsis

Fix UNKNOWN default values in ext/spl


# 16e9d74f 27-Apr-2020 Nikita Popov

Fixed bug #79432


# d7f7080b 25-Apr-2020 Máté Kocsis

Generate methods entries from stubs for ext/spl

Closes GH-5458


# 01b266aa 18-Mar-2020 Máté Kocsis

Improve error messages of various extensions

Closes GH-5278


# d1764ca3 15-Jan-2020 Máté Kocsis

Make error messages more consistent by fixing capitalization

Closes GH-5066 As a first step, let's capitalize their initial letter when it is applicable.


# 9099dbd9 01-Jan-2020 Máté Kocsis

Use RETURN_THROWS() after zend_type_error()


# 81760591 31-Dec-2019 Máté Kocsis

Use RETURN_THROWS() during ZPP in the remaining extensions

In reflection, sodium, and SPL


# 1695d3ed 05-Dec-2019 Tyson Andre

Add funcinfo for spl global functions

This assumes that `iterator_*` will now always throw or abort on failure.

Also, move #include _arginfo.h directive to the top of the file - vir

Add funcinfo for spl global functions

This assumes that `iterator_*` will now always throw or abort on failure.

Also, move #include _arginfo.h directive to the top of the file - virtually all
other files put it there, and developers may base code on basic_functions.c.

Closes GH-4968

show more ...


# a90abe20 08-Dec-2019 George Peter Banyard

Convert warnings to TypeError in php_spl.c

Closes GH-4991


# 05e6a11b 11-Dec-2019 Nikita Popov

Remove ZEND_PARSE_PARAMS_QUIET from spl_autoload_register()


# 94938934 29-Oct-2019 Máté Kocsis

Cleanup return values when parameter parsing is unsuccessful


# 5d6e923d 24-Sep-2019 Gabriel Caruso

Remove mention of PHP major version in Copyright headers

Closes GH-4732.


# c0e9b153 03-Sep-2019 Nikita Popov

Add zpp check to spl_classes()


# 5acedabf 03-Sep-2019 Nikita Popov

Clarify failure behavior of spl_iterator_apply()

It only fails if it throws, in which case it is meaningless to
set a return value.


# 92ac598a 22-Jan-2019 Peter Kokot

Remove local variables

This patch removes the so called local variables defined per
file basis for certain editors to properly show tab width, and
similar settings. These are mainly

Remove local variables

This patch removes the so called local variables defined per
file basis for certain editors to properly show tab width, and
similar settings. These are mainly used by Vim and Emacs editors
yet with recent changes the once working definitions don't work
anymore in Vim without custom plugins or additional configuration.
Neither are these settings synced across the PHP code base.

A simpler and better approach is EditorConfig and fixing code
using some code style fixing tools in the future instead.

This patch also removes the so called modelines for Vim. Modelines
allow Vim editor specifically to set some editor configuration such as
syntax highlighting, indentation style and tab width to be set in the
first line or the last 5 lines per file basis. Since the php test
files have syntax highlighting already set in most editors properly and
EditorConfig takes care of the indentation settings, this patch removes
these as well for the Vim 6.0 and newer versions.

With the removal of local variables for certain editors such as
Emacs and Vim, the footer is also probably not needed anymore when
creating extensions using ext_skel.php script.

Additionally, Vim modelines for setting php syntax and some editor
settings has been removed from some *.phpt files. All these are
mostly not relevant for phpt files neither work properly in the
middle of the file.

show more ...


# 0dfd918e 30-Jan-2019 Nikita Popov

Remove support for __autoload()

There are probably some improvements we can do to the SPL
implementation now that __autoload() is gone. In particular having
EG(autoload_func) as a pr

Remove support for __autoload()

There are probably some improvements we can do to the SPL
implementation now that __autoload() is gone. In particular having
EG(autoload_func) as a property zend function, rather than a simple
callback probably doesn't make sense.

show more ...


# 0cf7de1c 30-Jan-2019 Zeev Suraski

Remove yearly range from copyright notice


12345678910>>...13