diff options
author | Roeland Jago Douma <roeland@famdouma.nl> | 2019-04-18 21:04:27 +0200 |
---|---|---|
committer | Backportbot <backportbot-noreply@rullzer.com> | 2019-04-24 07:02:46 +0000 |
commit | ad5dcc2cd6cf1f6d924cc679be1a5b4330058ab1 (patch) | |
tree | 08269aaf9a36e351681a29bf5cee9941340d914b | |
parent | 46bbb49a3e3b8b0b837d4c926eb515a030b0f286 (diff) | |
download | nextcloud-server-ad5dcc2cd6cf1f6d924cc679be1a5b4330058ab1.tar.gz nextcloud-server-ad5dcc2cd6cf1f6d924cc679be1a5b4330058ab1.zip |
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 <roeland@famdouma.nl>
-rw-r--r-- | lib/private/Files/ObjectStore/Swift.php | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/lib/private/Files/ObjectStore/Swift.php b/lib/private/Files/ObjectStore/Swift.php index 7e4654b6eb2..fd416157635 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, |