10 Commits
Author SHA1 Message Date
Jakub Zelenka 39a230ccda main/streams: Pair refused stream error operations with a no-op end
When the depth limit refuses a begin, the matching end popped an unrelated
operation and desynchronized the stack.
2026-09-16 22:09:39 +02:00
Jakub Zelenka 1074fcb2bf main/streams: Detach errors before reporting in stream error operation end
The operation can live in the reallocatable overflow array, so it must not
be touched after user code has run. Handlers also run with the operation
stack hidden, so errors they raise are reported immediately instead of
being attached to an enclosing operation.
2026-09-16 22:09:39 +02:00
Gina Peter Banyard c290dfdb0d streams: various small refactoring for stream error API (#22847)
- Use const when possible
- Use bool or size_t type rather than int type
2026-07-28 13:44:00 +01:00
Gina Peter Banyard 2bddba4db7 streams: use C enums instead of define for error_{store_}mode (#22901)
Also make private as these are not used outside of the file.
2026-07-27 20:20:11 +01:00
Gina Peter Banyard 0cf29ab058 streams: remove param field of php_stream_error_entry
It is always assigned NULL
2026-07-20 20:50:13 +01:00
Gina Peter Banyard 34c686a5b4 stream: remove path parameter in stream error functions (#22792)
Instead rely on the mechanism gated by the error_include_args INI to display them.

This actually aligns the behaviour of what was accepted in https://wiki.php.net/rfc/display_error_function_args.
2026-07-19 16:15:01 +01:00
Gina Peter Banyard 1f7abed789 streams: remove php_stream_wrapper_warn_param() functions
And instead let the normal docref error handling code handle arguments
2026-07-17 14:33:38 +01:00
Gina Peter Banyard 0f78dbaab2 streams: use built-in argument handling for warnings instead of 2 param functions (#22749)
Since all warnings can now display the arguments of the call, the stream layer can just piggyback on-top of it instead of the additional complexity of handling it.

This is only a first step as there is still the 1 param variant that needs to be converted.
2026-07-15 19:33:48 +01:00
Jakub Zelenka 0d6f941e8b Fix old license headers from latest stream changes 2026-06-14 22:29:37 +02:00
Jakub Zelenka f2b371e747 Add new stream erros API
This introduces new stream error handling that allows configurable
handling of stream errors. This can be configured in stream contex.

All streams, ext/standard and ext/phar stream errors are converted to
use the new API.

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

Closes GH-20524
2026-05-29 23:30:40 +02:00