remove double loop for detecting changed mounts
Signed-off-by: Robin Appelman <robin@icewind.nl>
This commit is contained in:
parent
bcc1a53f05
commit
95981810c0
1 changed files with 12 additions and 9 deletions
|
@ -135,16 +135,19 @@ class UserMountCache implements IUserMountCache {
|
|||
* @return ICachedMountInfo[]
|
||||
*/
|
||||
private function findChangedMounts(array $newMounts, array $cachedMounts) {
|
||||
$new = [];
|
||||
foreach ($newMounts as $mount) {
|
||||
$new[$mount->getRootId()] = $mount;
|
||||
}
|
||||
$changed = [];
|
||||
foreach ($newMounts as $newMount) {
|
||||
foreach ($cachedMounts as $cachedMount) {
|
||||
foreach ($cachedMounts as $cachedMount) {
|
||||
$rootId = $cachedMount->getRootId();
|
||||
if (isset($new[$rootId])) {
|
||||
$newMount = $new[$rootId];
|
||||
if (
|
||||
$newMount->getRootId() === $cachedMount->getRootId() &&
|
||||
(
|
||||
$newMount->getMountPoint() !== $cachedMount->getMountPoint() ||
|
||||
$newMount->getStorageId() !== $cachedMount->getStorageId() ||
|
||||
$newMount->getMountId() !== $cachedMount->getMountId()
|
||||
)
|
||||
$newMount->getMountPoint() !== $cachedMount->getMountPoint() ||
|
||||
$newMount->getStorageId() !== $cachedMount->getStorageId() ||
|
||||
$newMount->getMountId() !== $cachedMount->getMountId()
|
||||
) {
|
||||
$changed[] = $newMount;
|
||||
}
|
||||
|
@ -197,7 +200,7 @@ class UserMountCache implements IUserMountCache {
|
|||
}
|
||||
$mount_id = $row['mount_id'];
|
||||
if (!is_null($mount_id)) {
|
||||
$mount_id = (int) $mount_id;
|
||||
$mount_id = (int)$mount_id;
|
||||
}
|
||||
return new CachedMountInfo($user, (int)$row['storage_id'], (int)$row['root_id'], $row['mount_point'], $mount_id, isset($row['path']) ? $row['path'] : '');
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue