fix missing dir creation for file versions (OC_Filesystemview::mkdir doesn't work here because it doesn't create directories recursively)

remotes/origin/stable5
Björn Schießle 13 years ago
parent 7b64ab9294
commit 33dcb3b1f4
  1. 2
      apps/files_versions/lib/hooks.php
  2. 6
      apps/files_versions/lib/versions.php

@ -64,7 +64,7 @@ class Hooks {
$abs_newpath = \OCP\Config::getSystemValue('datadirectory').$versions_fileview->getAbsolutePath('').$params['newpath'].'.v';
if(Storage::isversioned($rel_oldpath)) {
$info=pathinfo($abs_newpath);
if(!file_exists($info['dirname'])) mkdir($info['dirname'],0700,true);
if(!file_exists($info['dirname'])) mkdir($info['dirname'],0750,true);
$versions = Storage::getVersions($rel_oldpath);
foreach ($versions as $v) {
rename($abs_oldpath.$v['version'], $abs_newpath.$v['version']);

@ -106,9 +106,9 @@ class Storage {
// create all parent folders
$dirname = dirname($filename);
if(!$users_view->file_exists('/files_versions/'.$dirname)) {
$users_view->mkdir('/files_versions/'.$dirname,0700,true);
$info=pathinfo($filename);
if(!file_exists($versionsFolderName.'/'.$info['dirname'])) {
mkdir($versionsFolderName.'/'.$info['dirname'],0750,true);
}
// store a new version of a file

Loading…
Cancel
Save