Merge pull request #2299 from nextcloud/oc-mounts-non-existing-user
filter out oc_mounts results from non existing users
This commit is contained in:
commit
d6ade509cf
|
@ -188,6 +188,9 @@ class UserMountCache implements IUserMountCache {
|
|||
|
||||
private function dbRowToMountInfo(array $row) {
|
||||
$user = $this->userManager->get($row['user_id']);
|
||||
if (is_null($user)) {
|
||||
return null;
|
||||
}
|
||||
return new CachedMountInfo($user, (int)$row['storage_id'], (int)$row['root_id'], $row['mount_point'], $row['mount_id'], isset($row['path'])? $row['path']:'');
|
||||
}
|
||||
|
||||
|
@ -205,7 +208,7 @@ class UserMountCache implements IUserMountCache {
|
|||
|
||||
$rows = $query->execute()->fetchAll();
|
||||
|
||||
$this->mountsForUsers[$user->getUID()] = array_map([$this, 'dbRowToMountInfo'], $rows);
|
||||
$this->mountsForUsers[$user->getUID()] = array_filter(array_map([$this, 'dbRowToMountInfo'], $rows));
|
||||
}
|
||||
return $this->mountsForUsers[$user->getUID()];
|
||||
}
|
||||
|
@ -223,7 +226,7 @@ class UserMountCache implements IUserMountCache {
|
|||
|
||||
$rows = $query->execute()->fetchAll();
|
||||
|
||||
return array_map([$this, 'dbRowToMountInfo'], $rows);
|
||||
return array_filter(array_map([$this, 'dbRowToMountInfo'], $rows));
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -239,7 +242,7 @@ class UserMountCache implements IUserMountCache {
|
|||
|
||||
$rows = $query->execute()->fetchAll();
|
||||
|
||||
return array_map([$this, 'dbRowToMountInfo'], $rows);
|
||||
return array_filter(array_map([$this, 'dbRowToMountInfo'], $rows));
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
Loading…
Reference in New Issue