Skip to content
Snippets Groups Projects
Commit c5ba4f47 authored by Jörn Friedrich Dreyer's avatar Jörn Friedrich Dreyer
Browse files

fix quota off by one error

parent c0538636
No related branches found
No related tags found
No related merge requests found
......@@ -43,7 +43,7 @@ class OC_FileProxy_Quota extends OC_FileProxy{
$userQuota=OC_AppConfig::getValue('files', 'default_quota', 'none');
}
if($userQuota=='none') {
$this->userQuota[$user]=0;
$this->userQuota[$user]=-1;
}else{
$this->userQuota[$user]=OC_Helper::computerFileSize($userQuota);
}
......@@ -61,8 +61,8 @@ class OC_FileProxy_Quota extends OC_FileProxy{
$owner=$storage->getOwner($path);
$totalSpace=$this->getQuota($owner);
if($totalSpace==0) {
return 0;
if($totalSpace==-1) {
return -1;
}
$rootInfo=OC_FileCache::get('', "/".$owner."/files");
......@@ -79,7 +79,7 @@ class OC_FileProxy_Quota extends OC_FileProxy{
public function postFree_space($path, $space) {
$free=$this->getFreeSpace($path);
if($free==0) {
if($free==-1) {
return $space;
}
return min($free, $space);
......@@ -89,21 +89,21 @@ class OC_FileProxy_Quota extends OC_FileProxy{
if (is_resource($data)) {
$data = '';//TODO: find a way to get the length of the stream without emptying it
}
return (strlen($data)<$this->getFreeSpace($path) or $this->getFreeSpace($path)==0);
return (strlen($data)<$this->getFreeSpace($path) or $this->getFreeSpace($path)==-1);
}
public function preCopy($path1, $path2) {
if(!self::$rootView) {
self::$rootView = new OC_FilesystemView('');
}
return (self::$rootView->filesize($path1)<$this->getFreeSpace($path2) or $this->getFreeSpace($path2)==0);
return (self::$rootView->filesize($path1)<$this->getFreeSpace($path2) or $this->getFreeSpace($path2)==-1);
}
public function preFromTmpFile($tmpfile, $path) {
return (filesize($tmpfile)<$this->getFreeSpace($path) or $this->getFreeSpace($path)==0);
return (filesize($tmpfile)<$this->getFreeSpace($path) or $this->getFreeSpace($path)==-1);
}
public function preFromUploadedFile($tmpfile, $path) {
return (filesize($tmpfile)<$this->getFreeSpace($path) or $this->getFreeSpace($path)==0);
return (filesize($tmpfile)<$this->getFreeSpace($path) or $this->getFreeSpace($path)==-1);
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment