Merge pull request #11736 from owncloud/enc_get_fileinfo_from_real_file
if we read a .part file we try to get the file info from the real file
This commit is contained in:
commit
68a522a8fa
|
@ -345,8 +345,8 @@ class Proxy extends \OC_FileProxy {
|
||||||
return $size;
|
return $size;
|
||||||
}
|
}
|
||||||
|
|
||||||
// get file info from database/cache if not .part file
|
// get file info from database/cache
|
||||||
if (empty($fileInfo) && !Helper::isPartialFilePath($path)) {
|
if (empty($fileInfo)) {
|
||||||
$proxyState = \OC_FileProxy::$enabled;
|
$proxyState = \OC_FileProxy::$enabled;
|
||||||
\OC_FileProxy::$enabled = false;
|
\OC_FileProxy::$enabled = false;
|
||||||
$fileInfo = $view->getFileInfo($path);
|
$fileInfo = $view->getFileInfo($path);
|
||||||
|
|
|
@ -637,13 +637,17 @@ class Stream {
|
||||||
$path = Helper::stripPartialFileExtension($this->rawPath);
|
$path = Helper::stripPartialFileExtension($this->rawPath);
|
||||||
|
|
||||||
$fileInfo = array(
|
$fileInfo = array(
|
||||||
|
'mimetype' => $this->rootView->getMimeType($this->rawPath),
|
||||||
'encrypted' => true,
|
'encrypted' => true,
|
||||||
'size' => $this->size,
|
|
||||||
'unencrypted_size' => $this->unencryptedSize,
|
'unencrypted_size' => $this->unencryptedSize,
|
||||||
);
|
);
|
||||||
|
|
||||||
// set fileinfo
|
// if we write a part file we also store the unencrypted size for
|
||||||
|
// the part file so that it can be re-used later
|
||||||
|
$this->rootView->putFileInfo($this->rawPath, $fileInfo);
|
||||||
|
if ($path !== $this->rawPath) {
|
||||||
$this->rootView->putFileInfo($path, $fileInfo);
|
$this->rootView->putFileInfo($path, $fileInfo);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -902,7 +902,7 @@ class View {
|
||||||
$scanner = $storage->getScanner($internalPath);
|
$scanner = $storage->getScanner($internalPath);
|
||||||
$scanner->scan($internalPath, Cache\Scanner::SCAN_SHALLOW);
|
$scanner->scan($internalPath, Cache\Scanner::SCAN_SHALLOW);
|
||||||
$data = $cache->get($internalPath);
|
$data = $cache->get($internalPath);
|
||||||
} else if ($watcher->checkUpdate($internalPath, $data)) {
|
} else if (!Cache\Scanner::isPartialFile($internalPath) && $watcher->checkUpdate($internalPath, $data)) {
|
||||||
$this->updater->propagate($path);
|
$this->updater->propagate($path);
|
||||||
$data = $cache->get($internalPath);
|
$data = $cache->get($internalPath);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue