#
bce53606 |
| 29-May-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix GH-11338: SplFileInfo empty getBasename with more than one slash Regressed in 13e4ce386bb7. Closes GH-11340.
|
#
6fbf81c6 |
| 09-Nov-2022 |
George Peter Banyard |
Fix GH-9883 SplFileObject::__toString() reads next line We need to overwrite the __toString magic method for SplFileObject, similarly to how DirectoryIterator overwrites it Moreover, th
Fix GH-9883 SplFileObject::__toString() reads next line We need to overwrite the __toString magic method for SplFileObject, similarly to how DirectoryIterator overwrites it Moreover, the custom cast handler is useless as we define __toString methods, so use the standard one instead. Closes GH-9912
show more ...
|
#
79a28324 |
| 05-Jul-2022 |
George Peter Banyard |
Revert "Fix GH-8563 Different results for seek() on SplFileObject and SplTempFileObject" Although the fix is partially correct it also breaks long standing behaviour which has been produced
Revert "Fix GH-8563 Different results for seek() on SplFileObject and SplTempFileObject" Although the fix is partially correct it also breaks long standing behaviour which has been produced since PHP 5.3. This reverts commit 6f87a5c6338d0d64d18e3a44b65c19acc9c529e8.
show more ...
|
#
9bae9ab3 |
| 28-Jun-2022 |
George Peter Banyard |
Fix GH-8861: correctly handle string lengths in SplFileinfo methods (#8869) * Fix GH-8861: correctly handle string lengths in \SplFileinfo::getBasename Co-authored-by: M. Vondano <m
Fix GH-8861: correctly handle string lengths in SplFileinfo methods (#8869) * Fix GH-8861: correctly handle string lengths in \SplFileinfo::getBasename Co-authored-by: M. Vondano <m-vo@users.noreply.github.com>
show more ...
|
#
3b92a966 |
| 25-Jun-2022 |
Ilija Tovilo |
Convert return type of various object handlers from int to zend_result (#8755)
|
#
20638dba |
| 24-Jun-2022 |
George Peter Banyard |
Use the passed 'this' pointer instead of ZEND_THIS (#8854) Removes the horrible hack usage of defining execute_data to be able to use ZEND_THING
|
#
7cd8879d |
| 21-Jun-2022 |
George Peter Banyard |
Refactor spl_filesystem_object_get_path() to return zend_string*
|
#
623fbfe7 |
| 20-Jun-2022 |
George Peter Banyard |
Remove Z_SPLFILESYSTEM_P macro Remove one level of macro expansion hell
|
#
4d43241e |
| 20-Jun-2022 |
George Peter Banyard |
Move some private SPL Directory elements out of the header
|
#
d5d0b07b |
| 20-Jun-2022 |
George Peter Banyard |
Early return in spl_filesystem_file_rewind()
|
#
a493c944 |
| 27-May-2022 |
George Peter Banyard |
Use bool for silent parameter in SPL directory.c
|
#
6bd01751 |
| 20-Jun-2022 |
cmp |
Prevent fclose on underlying SplFileObject file stream. (#7920)
|
#
dbf1cafd |
| 09-Jun-2022 |
George Peter Banyard |
Remove internal usage of SplFileInfo::_bad_state_ex() method (#8318) * Use standard VM handling instead * Deprecate the method as it is now useless
|
Revision tags: php-8.1.7RC1 |
|
#
2ac5948f |
| 08-Apr-2022 |
George Peter Banyard |
Refactor SplFileObject CSV methods (#8317) Use early returns, which fixes ValueError order of arguments and flattens the code
|
#
3931d726 |
| 08-Apr-2022 |
George Peter Banyard |
Add missing ZPP checks in SPL Directory (#8325) Co-authored-by: Máté Kocsis <kocsismate@woohoolabs.com>
|
#
89227060 |
| 07-Apr-2022 |
George Peter Banyard |
Minor refactoring of spl_directory.c Using more appropriate types Fix comments Early returns
|
#
b9e895bc |
| 31-Mar-2022 |
Max Kellermann |
Replace memcmp() with zend_string functions (#8216) * ext/oci8: use zend_string_equals() Eliminate duplicate code. * main/php_variables: use zend_string_equals_literal()
Replace memcmp() with zend_string functions (#8216) * ext/oci8: use zend_string_equals() Eliminate duplicate code. * main/php_variables: use zend_string_equals_literal() Eliminate duplicate code. * Zend/zend_string: add zend_string_equals_cstr() Allows eliminating duplicate code. * Zend, ext/{opcache,standard}, main/output: use zend_string_equals_cstr() Eliminate duplicate code. * Zend/zend_string: add zend_string_starts_with() * ext/{opcache,phar,spl,standard}: use zend_string_starts_with() This adds missing length checks to several callers, e.g. in cache_script_in_shared_memory(). This is important when the zend_string is shorter than the string parameter, when memcmp() happens to check backwards; this can result in an out-of-bounds memory access.
show more ...
|
Revision tags: php-8.1.4RC1, php-8.1.3, php-8.1.2RC1, php-8.1.0, php-7.3.33 |
|
#
90b7bde6 |
| 03-Nov-2021 |
Dmitry Stogov |
Use more compact representation for packed arrays. - for packed arrays we store just an array of zvals without keys. - the elements of packed array are accessible throuf as ht->arPacked[
Use more compact representation for packed arrays. - for packed arrays we store just an array of zvals without keys. - the elements of packed array are accessible throuf as ht->arPacked[i] instead of ht->arData[i] - in addition to general ZEND_HASH_FOREACH_* macros, we introduced similar familied for packed (ZEND_HASH_PACKED_FORECH_*) and real hashes (ZEND_HASH_MAP_FOREACH_*) - introduced an additional family of macros to access elements of array (packed or real hashes) ZEND_ARRAY_ELEMET_SIZE, ZEND_ARRAY_ELEMET_EX, ZEND_ARRAY_ELEMET, ZEND_ARRAY_NEXT_ELEMENT, ZEND_ARRAY_PREV_ELEMENT - zend_hash_minmax() prototype was changed to compare only values Because of smaller data set, this patch may show performance improvement on some apps and benchmarks that use packed arrays. (~1% on PHP-Parser) TODO: - sapi/phpdbg needs special support for packed arrays (WATCH_ON_BUCKET). - zend_hash_sort_ex() may require converting packed arrays to hash.
show more ...
|
Revision tags: php-7.3.32 |
|
#
088e5478 |
| 24-Sep-2021 |
Nikita Popov |
Fix FileSystemIterator without SKIP_DOTS There were two separate bugs here: * The get_iterator implementation did not match the Iterator implementation. In particular, get_iterat
Fix FileSystemIterator without SKIP_DOTS There were two separate bugs here: * The get_iterator implementation did not match the Iterator implementation. In particular, get_iterator did not respect SKIP_DOTS. * The constructor did not honor an explicitly omitted SKIP_DOTS flag. It could still be unset through setFlags() though.
show more ...
|
#
6f87a5c6 |
| 27-May-2022 |
George Peter Banyard |
Fix GH-8563 Different results for seek() on SplFileObject and SplTempFileObject With memory streams if we get a NULL buffer we must not instantiate an empty line
|
#
6186ecd4 |
| 07-Apr-2022 |
George Peter Banyard |
Fix GH-8273: SplFileObject: key() returns wrong value
|
#
660ef91f |
| 07-Apr-2022 |
George Peter Banyard |
Fix GH-8273: SplFileObject: key() returns wrong value
|
#
1d9a1f9b |
| 28-Feb-2022 |
Christoph M. Becker |
Fix GH-8121: SplFileObject - seek and key with csv file inconsistent First, we must not free the current line before we call `spl_filesystem_file_read_csv()`, because then the `current_l
Fix GH-8121: SplFileObject - seek and key with csv file inconsistent First, we must not free the current line before we call `spl_filesystem_file_read_csv()`, because then the `current_line` will not be properly updated. Since the EOF check is superfluous here, we move that part of the code to the branch for subtypes. This issue has been introduced by the fix for bug 75917. Second, we only must increase the `current_line` if we're not reading ahead. This issue has been introduced by the fix for bug 62004. Closes GH-8138.
show more ...
|
#
0ed39ed8 |
| 22-Dec-2021 |
Christoph M. Becker |
Fix GH-7809: Cloning a faked SplFileInfo object may segfault While the `path` is not supposed to be `NULL` for normal operation, it is possible to create `SplFileInfo` objects where that
Fix GH-7809: Cloning a faked SplFileInfo object may segfault While the `path` is not supposed to be `NULL` for normal operation, it is possible to create `SplFileInfo` objects where that is the case, and we must not follow the null pointer. Closes GH-7814.
show more ...
|
#
daf79e2d |
| 30-Nov-2021 |
Aliaksandr Bystry |
Fix #75917: SplFileObject::seek broken with CSV flags Closes GH-7697.
|