php-src/ext/spl/tests/fileobject_getcurrentline_basic.phpt
Christoph M. Becker f1d11c118d Fix #62004: SplFileObject: fgets after seek returns wrong line
As it is, `::seek(0)` sets the file pointer to the beginning of the
file, but `::seek($n)` where `$n > 0` sets the file pointer to the
beginning of the following line, having line `$n` already read into the
line buffer.  This is pretty inconsistent; we fix it by always seeking
to the beginning of the line.

We also add a test case for the duplicate bug #46569.

Closes GH-6434.
2020-11-30 16:03:37 +01:00

19 lines
294 B
PHP
Raw Blame History

--TEST--
SPL: SplFileObject::getCurrentLine
--CREDITS--
H<EFBFBD>vard Eide <nucleuz at gmail.com>
#Testfest php.no
--FILE--
<?php
//line 2
//line 3
//line 4
//line 5
$s = new SplFileObject(__FILE__);
$s->seek(1);
echo $s->getCurrentLine();
echo $s->getCurrentLine();
?>
--EXPECT--
//line 2
//line 3