diff --git a/lib/private/Files/Stream/Quota.php b/lib/private/Files/Stream/Quota.php index cc737910fd8..3c7e09c633b 100644 --- a/lib/private/Files/Stream/Quota.php +++ b/lib/private/Files/Stream/Quota.php @@ -78,7 +78,10 @@ class Quota extends Wrapper { $data = substr($data, 0, $this->limit); $size = $this->limit; } - $this->limit -= $size; - return fwrite($this->source, $data); + $written = fwrite($this->source, $data); + // Decrement quota by the actual number of bytes written ($written), + // not the intended size + $this->limit -= $written; + return $written; } }