From dedb84acb0f4627175fb1689519fc4fe6eb4c023 Mon Sep 17 00:00:00 2001 From: Roeland Jago Douma Date: Thu, 18 Apr 2019 21:04:27 +0200 Subject: [PATCH] Always use a temp file for swift writes Apparently the if statement doesn't work in all cases (even if I could not reproduce it). So for the time being we will just not directly stream to swift. Signed-off-by: Roeland Jago Douma --- lib/private/Files/ObjectStore/Swift.php | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/lib/private/Files/ObjectStore/Swift.php b/lib/private/Files/ObjectStore/Swift.php index 7e4654b6eb..fd41615763 100644 --- a/lib/private/Files/ObjectStore/Swift.php +++ b/lib/private/Files/ObjectStore/Swift.php @@ -76,14 +76,9 @@ class Swift implements IObjectStore { * @throws \Exception from openstack lib when something goes wrong */ public function writeObject($urn, $stream) { - $handle = $stream; - - $meta = stream_get_meta_data($stream); - if (!(isset($meta['seekable']) && $meta['seekable'] === true)) { - $tmpFile = \OC::$server->getTempManager()->getTemporaryFile('swiftwrite'); - file_put_contents($tmpFile, $stream); - $handle = fopen($tmpFile, 'rb'); - } + $tmpFile = \OC::$server->getTempManager()->getTemporaryFile('swiftwrite'); + file_put_contents($tmpFile, $stream); + $handle = fopen($tmpFile, 'rb'); $this->getContainer()->createObject([ 'name' => $urn,