From 22b2e955319a51d8ff9376710aa6c3088c88a45d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rub=C3=A9n=20Calvo?= Date: Tue, 12 Jun 2018 09:42:56 +0200 Subject: [PATCH] [ticket/15342] Add again check of free space when uploading attachments PHPBB3-15342 --- phpBB/phpbb/attachment/upload.php | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/phpBB/phpbb/attachment/upload.php b/phpBB/phpbb/attachment/upload.php index 3a983addc3..8d4b68c7be 100644 --- a/phpBB/phpbb/attachment/upload.php +++ b/phpBB/phpbb/attachment/upload.php @@ -327,10 +327,36 @@ class upload /** * Check if there is enough free space available on disk * - * @return bool True if disk space is available, false if not + * @return bool True if disk space is available or can't get it, false if not */ protected function check_disk_space() { + try + { + $free_space = $this->storage->free_space(); + + if ($free_space <= $this->file->get('filesize')) + { + if ($this->auth->acl_get('a_')) + { + $this->file_data['error'][] = $this->language->lang('ATTACH_DISK_FULL'); + } + else + { + $this->file_data['error'][] = $this->language->lang('ATTACH_QUOTA_REACHED'); + } + $this->file_data['post_attach'] = false; + + $this->file->remove($this->storage); + + return false; + } + } + catch (\phpbb\storage\exception\exception $e) + { + // Nothing + } + return true; }