Fix file size computation on 32bit platforms
Signed-off-by: aler9 <46489434+aler9@users.noreply.github.com>
This commit is contained in:
parent
e8b284e807
commit
dc7eb53a8f
|
@ -146,8 +146,8 @@ class Local extends \OC\Files\Storage\Common {
|
||||||
public function stat($path) {
|
public function stat($path) {
|
||||||
$fullPath = $this->getSourcePath($path);
|
$fullPath = $this->getSourcePath($path);
|
||||||
clearstatcache(true, $fullPath);
|
clearstatcache(true, $fullPath);
|
||||||
$statResult = stat($fullPath);
|
$statResult = @stat($fullPath);
|
||||||
if (PHP_INT_SIZE === 4 && !$this->is_dir($path)) {
|
if (PHP_INT_SIZE === 4 && $statResult && !$this->is_dir($path)) {
|
||||||
$filesize = $this->filesize($path);
|
$filesize = $this->filesize($path);
|
||||||
$statResult['size'] = $filesize;
|
$statResult['size'] = $filesize;
|
||||||
$statResult[7] = $filesize;
|
$statResult[7] = $filesize;
|
||||||
|
@ -159,9 +159,7 @@ class Local extends \OC\Files\Storage\Common {
|
||||||
* @inheritdoc
|
* @inheritdoc
|
||||||
*/
|
*/
|
||||||
public function getMetaData($path) {
|
public function getMetaData($path) {
|
||||||
$fullPath = $this->getSourcePath($path);
|
$stat = $this->stat($path);
|
||||||
clearstatcache(true, $fullPath);
|
|
||||||
$stat = @stat($fullPath);
|
|
||||||
if (!$stat) {
|
if (!$stat) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
@ -180,6 +178,7 @@ class Local extends \OC\Files\Storage\Common {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!($path === '' || $path === '/')) { // deletable depends on the parents unix permissions
|
if (!($path === '' || $path === '/')) { // deletable depends on the parents unix permissions
|
||||||
|
$fullPath = $this->getSourcePath($path);
|
||||||
$parent = dirname($fullPath);
|
$parent = dirname($fullPath);
|
||||||
if (is_writable($parent)) {
|
if (is_writable($parent)) {
|
||||||
$permissions += Constants::PERMISSION_DELETE;
|
$permissions += Constants::PERMISSION_DELETE;
|
||||||
|
|
Loading…
Reference in New Issue