Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/richdocuments.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorRoeland Jago Douma <roeland@famdouma.nl>2020-11-18 22:48:11 +0300
committerRoeland Jago Douma <roeland@famdouma.nl>2020-11-18 22:48:11 +0300
commit4f858f1634ebf3a63380b18f276fcf0f818b98c0 (patch)
tree48244e8dfed4e1f45446d62d488424e3ffe8b7be /lib
parent80b1312144b2b84b1c45848ac84ea8dc11066158 (diff)
Don't use a stream response on an empty file
Streaming an empty file does boom currently. So lets use a differnt response for that. Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Diffstat (limited to 'lib')
-rw-r--r--lib/Controller/WopiController.php16
1 files changed, 12 insertions, 4 deletions
diff --git a/lib/Controller/WopiController.php b/lib/Controller/WopiController.php
index a0a475bd..0fbc5ef3 100644
--- a/lib/Controller/WopiController.php
+++ b/lib/Controller/WopiController.php
@@ -353,15 +353,23 @@ class WopiController extends Controller {
$versionPath = '/files_versions/' . $relPath . '.v' . $version;
$view = new View('/' . $wopi->getOwnerUid());
if ($view->file_exists($versionPath)){
- $response = new StreamResponse($view->fopen($versionPath, 'rb'));
+ $info = $view->getFileInfo($versionPath);
+ if ($info->getSize() === 0) {
+ $response = new Http\Response();
+ } else {
+ $response = new StreamResponse($view->fopen($versionPath, 'rb'));
+ }
}
else {
return new JSONResponse([], Http::STATUS_NOT_FOUND);
}
}
- else
- {
- $response = new StreamResponse($file->fopen('rb'));
+ else {
+ if ($file->getSize() === 0) {
+ $response = new Http\Response();
+ } else {
+ $response = new StreamResponse($file->fopen('rb'));
+ }
}
$response->addHeader('Content-Disposition', 'attachment');
$response->addHeader('Content-Type', 'application/octet-stream');