History log of /PHP-8.2/Zend/zend_exceptions.c (Results 1 – 25 of 421)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# c2115a43 03-Oct-2024 Arnaud Le Blanc

Handle references properties of the Exception class

Fixes GH-16188
Closes GH-16196


# 2cde4b2e 15-Jan-2024 Niels Dossche <7771979+nielsdos@users.noreply.github.com>

Fix GH-13097: Anonymous class reference in trigger_error / thrown Exception

Closes GH-13153.

# c0bb5b0b 19-Mar-2023 Ilija Tovilo

Merge branch 'PHP-8.1' into PHP-8.2

* PHP-8.1:
Fix NUL byte in exception string terminating Exception::__toString()


# b5726c2c 17-Mar-2023 Ilija Tovilo

Fix NUL byte in exception string terminating Exception::__toString()

Fixes GH-10810
Closes GH-10873

# dbedb69f 22-Oct-2022 David Carlier

Merge branch 'PHP-8.1' into PHP-8.2


# fe06c5ef 22-Oct-2022 David Carlier

Merge branch 'PHP-8.0' into PHP-8.1


# 45e224cf 22-Oct-2022 Adam Saponara

Fix GH-9709: Guard against current_execute_data==NULL in is_handle_exception_set

# 5a0b68be 14-Sep-2022 Bob Weinand

Revert "Store default object handlers alongside the class entry"

This reverts commit 9e6eab3c139b41dc976dd5305fd1a6e387e5e27f.

Reverted along a01dd9fedaecd2e5b95bc5c2e8d6542116addea

Revert "Store default object handlers alongside the class entry"

This reverts commit 9e6eab3c139b41dc976dd5305fd1a6e387e5e27f.

Reverted along a01dd9fedaecd2e5b95bc5c2e8d6542116addeae.

show more ...

# 9e6eab3c 22-Jul-2022 Bob Weinand

Store default object handlers alongside the class entry

Object handlers being separate from class entries is a legacy inherited from PHP 5. Today it has little benefit to keep them separate:

Store default object handlers alongside the class entry

Object handlers being separate from class entries is a legacy inherited from PHP 5. Today it has little benefit to keep them separate: in fact, accessing object handlers usually requires not-so-safe hacks.
While it is possible to swap handlers in a custom installed create_object handler, this mostly is tedious, as well as it requires allocating the object handlers struct at runtime, possibly caching it etc..

This allows extensions, which intend to observe other classes to install their own class handlers.
The life cycle of internal classes may now be simply observed by swapping the class handlers in post_startup stage.
The life cycle of userland classes may be observed by iterating over the new classes in zend_compile_file and zend_compile_string and then swapping their handlers.

In general, this would also be a first step in directly tying the object handlers to classes. Especially given that I am not aware of any case where the object handlers would be different between various instances of a given class.

Signed-off-by: Bob Weinand <bobwei9@hotmail.com>

show more ...

# 14da1cb90 22-May-2022 Máté Kocsis

Add support for class constants in stubs (#7434)

# 733023b2 10-Mar-2022 Ilija Tovilo

Improve error message class type

Refer to interfaces/enums instead of classes in more places.

Closes GH-7792
Closes GH-8187

# ef2fd0e5 24-Nov-2021 Remi Collet

fix [-Wstrict-prototypes] buid warnings

# f5cce2b1 08-Sep-2021 Nikita Popov

Merge branch 'PHP-8.0' into PHP-8.1

* PHP-8.0:
Don't overwrite unwind exception


# 85b80c5a 03-Sep-2021 Nikita Popov

Don't overwrite unwind exception

When killing a coroutine by throwing an unwind exit into it during
an I/O operation, the I/O failure may result in an exception being
thrown, which w

Don't overwrite unwind exception

When killing a coroutine by throwing an unwind exit into it during
an I/O operation, the I/O failure may result in an exception being
thrown, which will replace the unwind exit exception and the
coroutine will ultimately not exit. This patch avoids this by
ignoring the newly thrown exception and keeping the unwind exit
exception.

Closes GH-7459.

show more ...

# 6cc4e328 19-Aug-2021 Nikita Popov

Only assign $severity for ErrorException

This code is used by generic EH_THROW with arbitrary Exception
types, while only ErrorException has a $severity property. We
don't want this

Only assign $severity for ErrorException

This code is used by generic EH_THROW with arbitrary Exception
types, while only ErrorException has a $severity property. We
don't want this code to add $severity properties to random
exception types like PDOException.

show more ...

# 05ef6334 29-Jul-2021 Joe Watkins

Fix bug #81303 improve match errors

# 60484818 02-Aug-2021 Nikita Popov

Add additional double to string APIs

zend_double_to_str() converts a double to string in the way that
(string) would (using %.*H using precision).

smart_str_append_double() prov

Add additional double to string APIs

zend_double_to_str() converts a double to string in the way that
(string) would (using %.*H using precision).

smart_str_append_double() provides some more fine control over
the precision, and whether a zero fraction should be appeneded
for whole numbers.

A caveat here is that raw calls to zend_gcvt and going through
s*printf has slightly different behavior for the degenarate
precision=0 case. zend_gcvt will add a dummy E+0 in that case,
while s*printf convert this to precision=1 and will not. I'm
going with the s*printf behavior here, which is more common,
but does result in a minor change to the precision.phpt test.

show more ...

# ae8647d9 20-Jul-2021 Levi Morrison

Remove leading underscore for _zend_hash_find_known_hash (#7260)

Convert zend_hash_find_ex(..., 1) to zend_hash_find_known_hash(...)
Convert zend_hash_find_ex(..., 0) to zend_hash_find(.

Remove leading underscore for _zend_hash_find_known_hash (#7260)

Convert zend_hash_find_ex(..., 1) to zend_hash_find_known_hash(...)
Convert zend_hash_find_ex(..., 0) to zend_hash_find(...)

Also add serializable changes to UPGRADING.INTERNALS summary

show more ...

# aff36587 29-Jun-2021 Patrick Allaert

Fixed some spaces used instead of tabs

# 66442a51 28-Jun-2021 Aaron Piotrowski

Allow creating Graceful/UnwindExit and use when destroying a fiber (#7174)

Direct creation of GracefulExit allows the the special exception object to be transfered and thrown into a destroye

Allow creating Graceful/UnwindExit and use when destroying a fiber (#7174)

Direct creation of GracefulExit allows the the special exception object to be transfered and thrown into a destroyed fiber using the same path as any other exception thrown into a fiber instead of needing to check for a flag.

show more ...

# 100a1e8e 28-May-2021 Nikita Popov

Convert exception during inheritance to fatal error

Now that inheritance can throw deprecations again, these may be
converted to exception by a custom error handler. In this case
we

Convert exception during inheritance to fatal error

Now that inheritance can throw deprecations again, these may be
converted to exception by a custom error handler. In this case
we need to convert the exception to a fatal error, as inheritance
cannot safely throw in the general case.

show more ...

# de6e401e 18-May-2021 Nikita Popov

Use common formatting for backtraces (#6977)

This makes debug_print_backtrace() use the same formatting as exception
backtraces. The only difference is that the final #{main} is omitted,

Use common formatting for backtraces (#6977)

This makes debug_print_backtrace() use the same formatting as exception
backtraces. The only difference is that the final #{main} is omitted,
because it wouldn't make sense for limited backtraces, and wasn't there
previously either.

show more ...

# 79d237c8 29-Apr-2021 Nikita Popov

Remove some unnecessary exception type checks

These types are enforced by typed properties now.

# c276c16b 26-Apr-2021 Aaron Piotrowski

Implement Fibers

RFC: https://wiki.php.net/rfc/fibers

Closes GH-6875.

# a1c6ee21 23-Apr-2021 Nikita Popov

Convert error filename to zend_string

Error handling functions/callbacks now accept the error filename
as a zend_string* instead of a const char*.

12345678910>>...17