summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRobin Appelman <robin@icewind.nl>2020-04-08 16:40:56 +0200
committerRobin Appelman <robin@icewind.nl>2020-04-08 16:40:56 +0200
commitccbf3059ba6cb497f2337f6eb348e52189c4915a (patch)
treeb452e00b28aa746512ecf18e1ddda65937121c48
parent981278a666370ce40d144ea8d7783e712605c1c0 (diff)
downloadnextcloud-server-ccbf3059ba6cb497f2337f6eb348e52189c4915a.tar.gz
nextcloud-server-ccbf3059ba6cb497f2337f6eb348e52189c4915a.zip
Close the streams in `writeStream` even when there is an exception
Signed-off-by: Robin Appelman <robin@icewind.nl>
-rw-r--r--lib/private/Files/Storage/Common.php9
1 files changed, 6 insertions, 3 deletions
diff --git a/lib/private/Files/Storage/Common.php b/lib/private/Files/Storage/Common.php
index f2d427227c9..1921e5f21d7 100644
--- a/lib/private/Files/Storage/Common.php
+++ b/lib/private/Files/Storage/Common.php
@@ -858,9 +858,12 @@ abstract class Common implements Storage, ILockingStorage, IWriteStreamStorage {
if (!$target) {
return 0;
}
- list($count, $result) = \OC_Helper::streamCopy($stream, $target);
- fclose($stream);
- fclose($target);
+ try {
+ [$count, $result] = \OC_Helper::streamCopy($stream, $target);
+ } finally {
+ fclose($target);
+ fclose($stream);
+ }
return $count;
}
}