Merge pull request #11204 from owncloud/fix_oc_stream_seek
Fix oc stream seek
This commit is contained in:
commit
9e8d2907e2
|
@ -29,7 +29,7 @@ class Close {
|
|||
}
|
||||
|
||||
public function stream_seek($offset, $whence = SEEK_SET) {
|
||||
fseek($this->source, $offset, $whence);
|
||||
return fseek($this->source, $offset, $whence) === 0;
|
||||
}
|
||||
|
||||
public function stream_tell() {
|
||||
|
|
|
@ -48,7 +48,7 @@ class OC {
|
|||
}
|
||||
|
||||
public function stream_seek($offset, $whence = SEEK_SET) {
|
||||
fseek($this->fileSource, $offset, $whence);
|
||||
return fseek($this->fileSource, $offset, $whence) === 0;
|
||||
}
|
||||
|
||||
public function stream_tell() {
|
||||
|
|
|
@ -83,7 +83,7 @@ class Quota {
|
|||
}
|
||||
// this wrapper needs to return "true" for success.
|
||||
// the fseek call itself returns 0 on succeess
|
||||
return !fseek($this->source, $offset, $whence);
|
||||
return fseek($this->source, $offset, $whence) === 0;
|
||||
}
|
||||
|
||||
public function stream_tell() {
|
||||
|
|
|
@ -79,6 +79,16 @@ class Test_StreamWrappers extends PHPUnit_Framework_TestCase {
|
|||
$this->assertEquals(array('.', '..', 'bar.txt', 'foo.txt'), scandir('oc:///'));
|
||||
$this->assertEquals('qwerty', file_get_contents('oc:///bar.txt'));
|
||||
|
||||
$fh = fopen('oc:///bar.txt', 'rb');
|
||||
$this->assertSame(0, ftell($fh));
|
||||
$content = fread($fh, 4);
|
||||
$this->assertSame(4, ftell($fh));
|
||||
$this->assertSame('qwer', $content);
|
||||
$content = fread($fh, 1);
|
||||
$this->assertSame(5, ftell($fh));
|
||||
$this->assertSame(0, fseek($fh, 0));
|
||||
$this->assertSame(0, ftell($fh));
|
||||
|
||||
unlink('oc:///foo.txt');
|
||||
$this->assertEquals(array('.', '..', 'bar.txt'), scandir('oc:///'));
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue