[php-src] Issue #8561: SplFileObject: key() and current() unsinchronized after call to fgets()

From: Date: Mon, 16 May 2022 01:32:50 +0000
Subject: [php-src] Issue #8561: SplFileObject: key() and current() unsinchronized after call to fgets()
Groups: php.bugs 
Request: Send a blank email to php-bugs+get-241521@lists.php.net to get a copy of this message
Issue: https://github.com/php/php-src/issues/8561 Author: gabrielpl ### Description The following [code](https://3v4l.org/R8sMu): ```php <?php declare(strict_types=1); $file = new SplTempFileObject(); // write to file for ($i = 0; $i < 5; $i++) { $file->fwrite("line {$i}" . PHP_EOL); } $file->rewind(); // read first line $file->fgets(); // where am I? echo $file->key(), ': ', $file->current(); ``` Resulted in this output: ``` 1: line 0 ``` But I expected this output instead: ``` 1: line 1 ``` This bug was introduced after fixing #8273 ### PHP Version PHP 8.1.6 ### Operating System Windows 11

« previous php.bugs (#241521) next »