diff options
-rw-r--r-- | apps/files_encryption/hooks/hooks.php | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/apps/files_encryption/hooks/hooks.php b/apps/files_encryption/hooks/hooks.php index e9d0235d167..53fec11009d 100644 --- a/apps/files_encryption/hooks/hooks.php +++ b/apps/files_encryption/hooks/hooks.php @@ -432,15 +432,18 @@ class Hooks { $mp1 = $view->getMountPoint('/' . $user . '/files/' . $params['oldpath']);
$mp2 = $view->getMountPoint('/' . $user . '/files/' . $params['newpath']);
- if ($mp1 === $mp2) {
-
- $oldKeysPath = Keymanager::getKeyPath($view, $util, $params['oldpath']);
+ $oldKeysPath = Keymanager::getKeyPath($view, $util, $params['oldpath']);
+ if ($mp1 === $mp2) {
self::$renamedFiles[$params['oldpath']] = array(
'operation' => $operation,
'oldKeysPath' => $oldKeysPath,
);
-
+ } else {
+ self::$renamedFiles[$params['oldpath']] = array(
+ 'operation' => 'cleanup',
+ 'oldKeysPath' => $oldKeysPath,
+ );
}
}
@@ -464,6 +467,9 @@ class Hooks { $operation = self::$renamedFiles[$params['oldpath']]['operation'];
$oldKeysPath = self::$renamedFiles[$params['oldpath']]['oldKeysPath'];
unset(self::$renamedFiles[$params['oldpath']]);
+ if ($operation === 'cleanup') {
+ return $view->unlink($oldKeysPath);
+ }
} else {
\OCP\Util::writeLog('Encryption library', "can't get path and owner from the file before it was renamed", \OCP\Util::DEBUG);
return false;
|