* @return array with metadata of the file
*/
public function getData($path) {
+ if (!$this->storage->isReadable($path)) {
+ //cant read, nothing we can do
+ \OCP\Util::writeLog('OC\Files\Cache\Scanner', "!!! Path '$path' is not readable !!!", \OCP\Util::ERROR);
+ return null;
+ }
$data = array();
- if (!$this->storage->isReadable($path)) return null; //cant read, nothing we can do
$data['mimetype'] = $this->storage->getMimeType($path);
$data['mtime'] = $this->storage->filemtime($path);
if ($data['mimetype'] == 'httpd/unix-directory') {
$newData = $data;
$cacheData = $this->cache->get($file);
if ($cacheData) {
- $this->permissionsCache->remove($cacheData['fileid']);
+ if (isset($cacheData['fileid'])) {
+ $this->permissionsCache->remove($cacheData['fileid']);
+ }
if ($reuseExisting) {
// prevent empty etag
$etag = $cacheData['etag'];
}
// Only update metadata that has changed
$newData = array_diff($data, $cacheData);
+ if (isset($newData['etag'])) {
+ \OCP\Util::writeLog('OC\Files\Cache\Scanner', "!!! No reuse of etag for '$file' !!!", \OCP\Util::ERROR);
+ }
}
}
if (!empty($newData)) {