php-src/win32
Arnaud Le Blanc 7b3e68ff69
Fix error handling inconsistency with opcache
When opcache is enabled, error handling is altered in the following ways:

 * Errors emitted during compilation bypass the user-defined error handler
 * Exceptions emitted during class linking are turned into fatal errors

Changes here make the behavior consistent regardless of opcache being enabled or
not:

 * Errors emitted during compilation and class linking are always delayed and
   handled after compilation or class linking. During handling, user-defined
   error handlers are not bypassed. Fatal errors emitted during compilation or
   class linking cause any delayed errors to be handled immediately (without
   calling user-defined error handlers, as it would be unsafe).
 * Exceptions thrown by user-defined error handlers when handling class linking
   error are not promoted to fatal errors anymore and do not prevent linking.

Fixes GH-17422.
Closes GH-18541.
Closes GH-17627.

Co-authored-by: Tim Düsterhus <tim@bastelstu.be>
2025-07-27 11:01:49 +02:00
..
build Fix error handling inconsistency with opcache 2025-07-27 11:01:49 +02:00
codepage.c Replace __forceinline with zend_always_inline in win32/ (GH-17482) 2025-01-16 15:05:24 +01:00
codepage.h Replace __forceinline with zend_always_inline in win32/ (GH-17482) 2025-01-16 15:05:24 +01:00
console.c Fixed some spaces used instead of tabs 2021-06-29 11:30:26 +02:00
console.h Update http->https in license (#6945) 2021-05-06 12:16:35 +02:00
cp_enc_map.c Trailing whitespaces 2018-01-03 14:38:00 +01:00
cp_enc_map_gen.c Remove local variables 2019-02-03 21:03:00 +01:00
dllmain.c win32/dllmain.c: drop some unused code (#16353) 2024-10-13 11:24:22 +01:00
fnmatch.c Fix Clang style nits (GH-17685) 2025-02-05 14:13:56 +01:00
fnmatch.h Remove local variables 2019-02-03 21:03:00 +01:00
ftok.c Avoid undefined behavior in Windows ftok(3) emulation 2022-11-18 14:37:00 +01:00
getrusage.c Update http->https in license (#6945) 2021-05-06 12:16:35 +02:00
getrusage.h Update http->https in license (#6945) 2021-05-06 12:16:35 +02:00
globals.c Fix missing include in win32/globals.c 2025-05-06 15:51:37 +02:00
ioutil.c Solve C4267 warnings in win32/ioutil for x64 (GH-17674) 2025-02-03 00:13:58 +01:00
ioutil.h Solve C4267 warnings in win32/ioutil for x64 (GH-17674) 2025-02-03 00:13:58 +01:00
ipc.h Update http->https in license (#6945) 2021-05-06 12:16:35 +02:00
nice.c Update http->https in license (#6945) 2021-05-06 12:16:35 +02:00
nice.h Update http->https in license (#6945) 2021-05-06 12:16:35 +02:00
param.h Remove local variables 2019-02-03 21:03:00 +01:00
php_registry.h Update http->https in license (#6945) 2021-05-06 12:16:35 +02:00
php_win32_globals.h Autotools: Refactor thread safety checks (#15214) 2024-08-05 22:30:10 +02:00
readdir.c Fix Clang style nits (GH-17685) 2025-02-05 14:13:56 +01:00
readdir.h Cache d_type in directory entry 2023-07-07 18:02:32 +02:00
registry.c Address more Clang warnings (GH-17506) 2025-01-21 20:05:29 +01:00
select.c Improve fix for GH-16889 2024-12-16 23:25:38 +01:00
select.h Update http->https in license (#6945) 2021-05-06 12:16:35 +02:00
sendmail.c Don't forward declare static functions in sendmail.h (GH-17684) 2025-02-03 16:50:32 +01:00
sendmail.h Don't forward declare static functions in sendmail.h (GH-17684) 2025-02-03 16:50:32 +01:00
signal.c Merge branch 'PHP-8.3' into PHP-8.4 2025-05-05 19:14:13 +02:00
signal.h Fix leak+crash with sapi_windows_set_ctrl_handler() 2025-05-05 19:13:39 +02:00
sockets.c Update http->https in license (#6945) 2021-05-06 12:16:35 +02:00
sockets.h Update http->https in license (#6945) 2021-05-06 12:16:35 +02:00
syslog.h Update http->https in license (#6945) 2021-05-06 12:16:35 +02:00
time.c Voidify getfilesystemtime() (GH-15413) 2024-08-14 21:09:26 +02:00
time.h Remove support for unsupported MSVC versions (GH-17128) 2024-12-12 19:50:14 +01:00
unistd.h Remove local variables 2019-02-03 21:03:00 +01:00
winutil.c Fix Clang style nits (GH-17685) 2025-02-05 14:13:56 +01:00
winutil.h Update http->https in license (#6945) 2021-05-06 12:16:35 +02:00
wsyslog.c Address more Clang warnings (GH-17506) 2025-01-21 20:05:29 +01:00