Commit bd9d914edaa for php.net
commit bd9d914edaa3591fc346774a8226a88a12bd7f5d
Merge: 6d98178ca39 62ea5944de8
Author: Ilia Alshanetsky <ilia@ilia.ws>
Date: Thu Jun 25 18:22:04 2026 -0400
Merge branch 'PHP-8.5'
* PHP-8.5:
Guard uninitialized SplFileObject in fputcsv() and next()
diff --cc ext/spl/spl_directory.c
index f662bb8a1db,c0b0f6ef7c9..ccab32aec78
--- a/ext/spl/spl_directory.c
+++ b/ext/spl/spl_directory.c
@@@ -2148,14 -2206,12 +2148,16 @@@ PHP_METHOD(SplFileObject, next
{
spl_filesystem_object *intern = spl_filesystem_from_obj(Z_OBJ_P(ZEND_THIS));
- if (zend_parse_parameters_none() == FAILURE) {
- RETURN_THROWS();
- }
+ ZEND_PARSE_PARAMETERS_NONE();
+ CHECK_SPL_FILE_OBJECT_IS_INITIALIZED(intern);
+
+ if (!intern->u.file.current_line && Z_ISUNDEF(intern->u.file.current_zval)) {
+ if (spl_filesystem_file_read_line(ZEND_THIS, intern, true) == FAILURE) {
+ return;
+ }
+ }
+
spl_filesystem_file_free_line(intern);
if (SPL_HAS_FLAG(intern->flags, SPL_FILE_OBJECT_READ_AHEAD)) {
spl_filesystem_file_read_line(ZEND_THIS, intern, true);