diff options
author | Bjoern Schiessle <schiessle@owncloud.com> | 2013-08-14 20:51:36 +0200 |
---|---|---|
committer | Bjoern Schiessle <schiessle@owncloud.com> | 2013-08-14 20:51:36 +0200 |
commit | a3d009e3b58099dfd86c53329290665ed09f7d72 (patch) | |
tree | 84333229ad9fe43e2f2b18a97420427f5b72f358 /apps/files_versions | |
parent | d314729ceaf26a373af8a43ca74e20393e6159dc (diff) | |
download | nextcloud-server-a3d009e3b58099dfd86c53329290665ed09f7d72.tar.gz nextcloud-server-a3d009e3b58099dfd86c53329290665ed09f7d72.zip |
also create root dir if it doesn't exist yet
Diffstat (limited to 'apps/files_versions')
-rw-r--r-- | apps/files_versions/lib/versions.php | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/apps/files_versions/lib/versions.php b/apps/files_versions/lib/versions.php index b0fde6b559f..ddf73f415c5 100644 --- a/apps/files_versions/lib/versions.php +++ b/apps/files_versions/lib/versions.php @@ -112,10 +112,11 @@ class Storage { // create all parent folders $dirname= \OC_Filesystem::normalizePath(pathinfo($filename, PATHINFO_DIRNAME)); $dirParts = explode('/', $dirname); + $dir = "/files_versions"; foreach ($dirParts as $part) { $dir = $dir.'/'.$part; - if(!$versions_view->file_exists($dir)) { - $versions_view->mkdir($dir); + if(!$users_view->file_exists($dir)) { + $users_view->mkdir($dir); } } @@ -186,13 +187,19 @@ class Storage { self::expire($newpath); - $abs_newpath = $versions_view->getLocalFile($newpath); - if ( $files_view->is_dir($oldpath) && $versions_view->is_dir($oldpath) ) { $versions_view->rename($oldpath, $newpath); } else if ( ($versions = Storage::getVersions($uid, $oldpath)) ) { - $info=pathinfo($abs_newpath); - if(!file_exists($info['dirname'])) mkdir($info['dirname'], 0750, true); + // create missing dirs if necessary + $dirname = \OC_Filesystem::normalizePath(pathinfo($newpath, PATHINFO_DIRNAME)); + $dirParts = explode('/', $dirname); + $dir = "/files_versions"; + foreach ($dirParts as $part) { + $dir = $dir.'/'.$part; + if(!$users_view->file_exists($dir)) { + $users_view->mkdir($dir); + } + } foreach ($versions as $v) { $versions_view->rename($oldpath.'.v'.$v['version'], $newpath.'.v'.$v['version']); } |