Bug #78799 [Opn]: Calling iterator_count() is killing the validity of RecursiveDirectoryIterator
| From: | k-gun at mail dot com | Date: | Sat, 09 Nov 2019 01:48:25 +0000 |
| Subject: | Bug #78799 [Opn]: Calling iterator_count() is killing the validity of RecursiveDirectoryIterator | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-223656@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=78799&edit=1
ID: 78799
User updated by: k-gun at mail dot com
Reported by: k-gun at mail dot com
Summary: Calling iterator_count() is killing the validity of
RecursiveDirectoryIterator
Status: Open
Type: Bug
Package: SPL related
Operating System: Ubuntu
-PHP Version: 7.4.0RC5
+PHP Version: 7.4.0RC4
Block user comment: N
Private report: N
New Comment:
New email.
Previous Comments:
------------------------------------------------------------------------
[2019-11-09 01:46:22] k-gun at mail dot com
Description:
------------
Hi,
Calling iterator_count() is affecting RecursiveDirectoryIterator::valid() and
RecursiveDirectoryIterator::valid() is returning false after iterator_count() call.
I am not sure that is a bug or just a behavior of PHP, but simply looks weird invalidating it
without any iteration act such as while or foreach.
Test script:
---------------
$iter = new RecursiveDirectoryIterator("/tmp/", RecursiveDirectoryIterator::SKIP_DOTS);
var_dump($iter->valid());
var_dump(iterator_count($iter));
var_dump($iter->valid());
Expected result:
----------------
bool(true)
int(24)
bool(true)
Actual result:
--------------
bool(true)
int(24)
bool(false)
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=78799&edit=1