Commit 77cd2919fd7 for php.net
commit 77cd2919fd7f0ab661ace3bfa0f54606a8f88871
Merge: 34116adc119 d23da75a227
Author: Gina Peter Banyard <girgias@php.net>
Date: Wed Jun 24 11:47:32 2026 +0100
Merge branch 'PHP-8.5'
* PHP-8.5:
NEWS entries for recent SPL bug fixes
ext/spl: ignore leading namespace separator in spl_autoload() (#22323)
ext/spl: fix class_parents for classes with leading slash in non-autoload mode (#22283)
diff --cc ext/spl/php_spl.c
index 0610e79196f,6bcf5b6cda3..e80917a7706
--- a/ext/spl/php_spl.c
+++ b/ext/spl/php_spl.c
@@@ -331,10 -298,15 +322,15 @@@ PHP_FUNCTION(spl_autoload
pos_len = sizeof(SPL_DEFAULT_FILE_EXTENSIONS) - 1;
} else {
pos = ZSTR_VAL(file_exts);
- pos_len = (int)ZSTR_LEN(file_exts);
+ pos_len = ZSTR_LEN(file_exts);
}
- lc_name = zend_string_tolower(class_name);
+ if (ZSTR_VAL(class_name)[0] == '\\') {
+ lc_name = zend_string_alloc(ZSTR_LEN(class_name) - 1, 0);
+ zend_str_tolower_copy(ZSTR_VAL(lc_name), ZSTR_VAL(class_name) + 1, ZSTR_LEN(class_name) - 1);
+ } else {
+ lc_name = zend_string_tolower(class_name);
+ }
while (pos && *pos && !EG(exception)) {
pos1 = strchr(pos, ',');
if (pos1) {