Skip to content

Commit 5029d86

Browse files
committed
Fix getDirectoryContent implementation for Jail wrapper
Signed-off-by: Robin Appelman <[email protected]>
1 parent b219ead commit 5029d86

File tree

2 files changed

+14
-1
lines changed

2 files changed

+14
-1
lines changed

lib/private/Files/Storage/Wrapper/Jail.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -541,6 +541,6 @@ public function writeStream(string $path, $stream, int $size = null): int {
541541
}
542542

543543
public function getDirectoryContent($directory): \Traversable {
544-
return $this->getWrapperStorage()->getDirectoryContent($this->getJailedPath($directory));
544+
return $this->getWrapperStorage()->getDirectoryContent($this->getUnjailedPath($directory));
545545
}
546546
}

tests/lib/Files/Storage/Storage.php

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,19 @@ public function testDirectories($directory) {
8888
}
8989
$this->assertEquals([$directory], $content);
9090

91+
$content = iterator_to_array($this->instance->getDirectoryContent('/'));
92+
93+
$this->assertCount(1, $content);
94+
$this->assertEquals([
95+
'name' => $directory,
96+
'mimetype' => $this->instance->getMimeType($directory),
97+
'mtime' => $this->instance->filemtime($directory),
98+
'size' => -1,
99+
'etag' => $content[0]['etag'], // random, so can't really check this
100+
'storage_mtime' => $this->instance->filemtime($directory),
101+
'permissions' => $this->instance->getPermissions($directory),
102+
], $content[0]);
103+
91104
$this->assertFalse($this->instance->mkdir('/' . $directory)); //can't create existing folders
92105
$this->assertTrue($this->instance->rmdir('/' . $directory));
93106

0 commit comments

Comments
 (0)