Merge pull request #16622 from owncloud/versions-cancelexpireforunexistingfiles

Abort expiration when file is gone
This commit is contained in:
Björn Schießle 2015-05-29 15:19:04 +02:00
commit 01a241f711
2 changed files with 16 additions and 2 deletions

View file

@ -346,7 +346,7 @@ class Storage {
*/
public static function getVersions($uid, $filename, $userFullPath = '') {
$versions = array();
if ($filename === '') {
if (empty($filename)) {
return $versions;
}
// fetch for old versions
@ -556,6 +556,10 @@ class Storage {
$config = \OC::$server->getConfig();
if($config->getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true') {
list($uid, $filename) = self::getUidAndFilename($filename);
if (empty($filename)) {
// file maybe renamed or deleted
return false;
}
$versionsFileview = new \OC\Files\View('/'.$uid.'/files_versions');
// get available disk space for user

View file

@ -552,8 +552,18 @@ class Test_Files_Versioning extends \Test\TestCase {
public function testGetVersionsEmptyFile() {
// execute copy hook of versions app
$versions = \OCA\Files_Versions\Storage::getVersions(self::TEST_VERSIONS_USER, '');
$this->assertCount(0, $versions);
$versions = \OCA\Files_Versions\Storage::getVersions(self::TEST_VERSIONS_USER, null);
$this->assertCount(0, $versions);
}
public function testExpireNonexistingFile() {
$this->logout();
// needed to have a FS setup (the background job does this)
\OC_Util::setupFS(self::TEST_VERSIONS_USER);
$this->assertFalse(\OCA\Files_Versions\Storage::expire('/void/unexist.txt'));
}
public function testRestoreSameStorage() {