Check if the part files has keys when the original file does not

remotes/origin/poc-doctrine-migrations
Joas Schilling 11 years ago
parent 1769de0a6d
commit e6681857d2
  1. 12
      lib/private/encryption/keys/storage.php

@ -72,7 +72,17 @@ class Storage implements IStorage {
public function getFileKey($path, $keyId, $encryptionModuleId) {
$realFile = $this->util->stripPartialFileExtension($path);
$keyDir = $this->getFileKeyDir($encryptionModuleId, $realFile);
return $this->getKey($keyDir . $keyId);
$key = $this->getKey($keyDir . $keyId);
if ($key === '' && $realFile !== $path) {
// Check if the part file has keys and use them, if no normal keys
// exist. This is required to fix copyBetweenStorage() when we
// rename a .part file over storage borders.
$keyDir = $this->getFileKeyDir($encryptionModuleId, $path);
$key = $this->getKey($keyDir . $keyId);
}
return $key;
}
/**

Loading…
Cancel
Save