fix(files): Stop overwriting scan_permissions

Signed-off-by: provokateurin <kate@provokateurin.de>
pull/55374/head
provokateurin 7 months ago
parent 81d0c73700
commit ef279f6049
No known key found for this signature in database
  1. 2
      lib/private/Files/Cache/Cache.php
  2. 2
      lib/private/Files/Cache/Wrapper/CachePermissionsMask.php
  3. 4
      lib/private/Files/Storage/Wrapper/PermissionsMask.php

@ -173,7 +173,7 @@ class Cache implements ICache {
$data['storage_mtime'] = $data['mtime'];
}
if (isset($data['f_permissions'])) {
$data['scan_permissions'] = $data['f_permissions'];
$data['scan_permissions'] ??= $data['f_permissions'];
}
$data['permissions'] = (int)$data['permissions'];
if (isset($data['creation_time'])) {

@ -24,7 +24,7 @@ class CachePermissionsMask extends CacheWrapper {
protected function formatCacheEntry($entry) {
if (isset($entry['permissions'])) {
$entry['scan_permissions'] = $entry['permissions'];
$entry['scan_permissions'] ??= $entry['permissions'];
$entry['permissions'] &= $this->mask;
}
return $entry;

@ -114,7 +114,7 @@ class PermissionsMask extends Wrapper {
$data = parent::getMetaData($path);
if ($data && isset($data['permissions'])) {
$data['scan_permissions'] = $data['scan_permissions'] ?? $data['permissions'];
$data['scan_permissions'] ??= $data['permissions'];
$data['permissions'] &= $this->mask;
}
return $data;
@ -129,7 +129,7 @@ class PermissionsMask extends Wrapper {
public function getDirectoryContent(string $directory): \Traversable {
foreach ($this->getWrapperStorage()->getDirectoryContent($directory) as $data) {
$data['scan_permissions'] = $data['scan_permissions'] ?? $data['permissions'];
$data['scan_permissions'] ??= $data['permissions'];
$data['permissions'] &= $this->mask;
yield $data;

Loading…
Cancel
Save