diff --git a/3rdparty b/3rdparty index 27a56c5bb9d0e..e287243b8eeaf 160000 --- a/3rdparty +++ b/3rdparty @@ -1 +1 @@ -Subproject commit 27a56c5bb9d0ec514a8fb22044fd5f03a51ea2a5 +Subproject commit e287243b8eeaf72443b841ace3b1788e85a5aacd diff --git a/lib/private/Files/Storage/Local.php b/lib/private/Files/Storage/Local.php index 5d0ce596b11f7..7f4568be02b71 100644 --- a/lib/private/Files/Storage/Local.php +++ b/lib/private/Files/Storage/Local.php @@ -274,6 +274,8 @@ public function file_get_contents($path) { } public function file_put_contents($path, $data) { + // support Write-Once-Read-Many filesystems + $this->unlink($path); return file_put_contents($this->getSourcePath($path), $data); } @@ -353,6 +355,10 @@ public function copy($path1, $path2) { } public function fopen($path, $mode) { + if ($mode === 'w') { + // support Write-Once-Read-Many filesystems + $this->unlink($path); + } return fopen($this->getSourcePath($path), $mode); }