@@ -1901,7 +1901,6 @@ static int spl_filesystem_file_read(spl_filesystem_object *intern, int silent) /
1901
1901
static int spl_filesystem_file_read_csv (spl_filesystem_object * intern , char delimiter , char enclosure , int escape , zval * return_value ) /* {{{ */
1902
1902
{
1903
1903
int ret = SUCCESS ;
1904
- zval * value ;
1905
1904
1906
1905
do {
1907
1906
ret = spl_filesystem_file_read (intern , 1 );
@@ -1918,8 +1917,7 @@ static int spl_filesystem_file_read_csv(spl_filesystem_object *intern, char deli
1918
1917
1919
1918
php_fgetcsv (intern -> u .file .stream , delimiter , enclosure , escape , buf_len , buf , & intern -> u .file .current_zval );
1920
1919
if (return_value ) {
1921
- value = & intern -> u .file .current_zval ;
1922
- ZVAL_COPY_DEREF (return_value , value );
1920
+ ZVAL_COPY (return_value , & intern -> u .file .current_zval );
1923
1921
}
1924
1922
}
1925
1923
return ret ;
@@ -1953,9 +1951,7 @@ static int spl_filesystem_file_read_line_ex(zval * this_ptr, spl_filesystem_obje
1953
1951
intern -> u .file .current_line = estrndup (Z_STRVAL (retval ), Z_STRLEN (retval ));
1954
1952
intern -> u .file .current_line_len = Z_STRLEN (retval );
1955
1953
} else {
1956
- zval * value = & retval ;
1957
-
1958
- ZVAL_COPY_DEREF (& intern -> u .file .current_zval , value );
1954
+ ZVAL_COPY_DEREF (& intern -> u .file .current_zval , & retval );
1959
1955
}
1960
1956
zval_ptr_dtor (& retval );
1961
1957
return SUCCESS ;
@@ -2185,10 +2181,8 @@ PHP_METHOD(SplFileObject, current)
2185
2181
if (intern -> u .file .current_line && (!SPL_HAS_FLAG (intern -> flags , SPL_FILE_OBJECT_READ_CSV ) || Z_ISUNDEF (intern -> u .file .current_zval ))) {
2186
2182
RETURN_STRINGL (intern -> u .file .current_line , intern -> u .file .current_line_len );
2187
2183
} else if (!Z_ISUNDEF (intern -> u .file .current_zval )) {
2188
- zval * value = & intern -> u .file .current_zval ;
2189
-
2190
- ZVAL_COPY_DEREF (return_value , value );
2191
- return ;
2184
+ ZEND_ASSERT (!Z_ISREF (intern -> u .file .current_zval ));
2185
+ RETURN_COPY (& intern -> u .file .current_zval );
2192
2186
}
2193
2187
RETURN_FALSE ;
2194
2188
} /* }}} */
0 commit comments