Ver código fonte

Keep user quota into account when the storage backend has unkown free space

tags/v5.0.0beta1
Robin Appelman 11 anos atrás
pai
commit
451daf3ab1
1 arquivos alterados com 9 adições e 6 exclusões
  1. 9
    6
      lib/fileproxy/quota.php

+ 9
- 6
lib/fileproxy/quota.php Ver arquivo

@@ -62,21 +62,21 @@ class OC_FileProxy_Quota extends OC_FileProxy{
* @var string $internalPath
*/
list($storage, $internalPath) = \OC\Files\Filesystem::resolvePath($path);
$owner=$storage->getOwner($internalPath);
$owner = $storage->getOwner($internalPath);
if (!$owner) {
return -1;
}

$totalSpace=$this->getQuota($owner);
if($totalSpace==-1) {
$totalSpace = $this->getQuota($owner);
if($totalSpace == -1) {
return -1;
}

$view = new \OC\Files\View("/".$owner."/files");

$rootInfo=$view->getFileInfo('/');
$usedSpace=isset($rootInfo['size'])?$rootInfo['size']:0;
return $totalSpace-$usedSpace;
$rootInfo = $view->getFileInfo('/');
$usedSpace = isset($rootInfo['size'])?$rootInfo['size']:0;
return $totalSpace - $usedSpace;
}

public function postFree_space($path, $space) {
@@ -84,6 +84,9 @@ class OC_FileProxy_Quota extends OC_FileProxy{
if($free==-1) {
return $space;
}
if ($space < 0){
return $free;
}
return min($free, $space);
}


Carregando…
Cancelar
Salvar