aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFerdinand Thiessen <opensource@fthiessen.de>2025-01-28 20:51:42 +0100
committerbackportbot[bot] <backportbot[bot]@users.noreply.github.com>2025-01-29 10:28:01 +0000
commit3f8244a841c2113be6d56944d0c108833aa9b416 (patch)
tree9664975fc06c10578e82a1c871a71b246e904360
parent4aff18170948dbe02e6c52c9d81b4941aafa9bff (diff)
downloadnextcloud-server-3f8244a841c2113be6d56944d0c108833aa9b416.tar.gz
nextcloud-server-3f8244a841c2113be6d56944d0c108833aa9b416.zip
fix(files): Do not array access null valuebackport/50437/stable29
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
-rw-r--r--lib/private/Files/Storage/Wrapper/Encoding.php4
-rw-r--r--tests/lib/Files/Storage/Wrapper/EncodingTest.php8
2 files changed, 11 insertions, 1 deletions
diff --git a/lib/private/Files/Storage/Wrapper/Encoding.php b/lib/private/Files/Storage/Wrapper/Encoding.php
index 1bdb0e39f14..3b8c7b72a61 100644
--- a/lib/private/Files/Storage/Wrapper/Encoding.php
+++ b/lib/private/Files/Storage/Wrapper/Encoding.php
@@ -531,7 +531,9 @@ class Encoding extends Wrapper {
public function getMetaData($path) {
$entry = $this->storage->getMetaData($this->findPathToUse($path));
- $entry['name'] = trim(Filesystem::normalizePath($entry['name']), '/');
+ if ($entry !== null) {
+ $entry['name'] = trim(Filesystem::normalizePath($entry['name']), '/');
+ }
return $entry;
}
diff --git a/tests/lib/Files/Storage/Wrapper/EncodingTest.php b/tests/lib/Files/Storage/Wrapper/EncodingTest.php
index 3f14ec64995..06f2d7d7800 100644
--- a/tests/lib/Files/Storage/Wrapper/EncodingTest.php
+++ b/tests/lib/Files/Storage/Wrapper/EncodingTest.php
@@ -241,4 +241,12 @@ class EncodingTest extends \Test\Files\Storage\Storage {
$entry = $this->instance->getMetaData('/test/' . self::NFD_NAME);
$this->assertEquals(self::NFC_NAME, $entry['name']);
}
+
+ /**
+ * Regression test of https://github.com/nextcloud/server/issues/50431
+ */
+ public function testNoMetadata() {
+ $this->assertNull($this->instance->getMetaData('/test/null'));
+ }
+
}