$rootInfo = $view->getFileInfo('');
// Create ownCloud Dir
- $rootDir = new OC_Connector_Sabre_Directory($view, $rootInfo);
- $objectTree->init($rootDir, $view);
+ if ($rootInfo->getType() === 'dir') {
+ $root = new OC_Connector_Sabre_Directory($view, $rootInfo);
+ } else {
+ $root = new OC_Connector_Sabre_File($view, $rootInfo);
+ }
+ $objectTree->init($root, $view);
$server->addPlugin(new OC_Connector_Sabre_AbortedUploadDetectionPlugin($view));
$server->addPlugin(new OC_Connector_Sabre_QuotaPlugin($view));
if (\OC_Util::encryptedFiles()) {
throw new \Sabre\DAV\Exception\ServiceUnavailable();
} else {
- return $this->fileView->fopen($this->path, 'rb');
+ return $this->fileView->fopen(ltrim($this->path, '/'), 'rb');
}
}