diff --git a/phpBB/phpbb/storage/adapter/adapter_interface.php b/phpBB/phpbb/storage/adapter/adapter_interface.php index a52585a42f..fa824703b7 100644 --- a/phpBB/phpbb/storage/adapter/adapter_interface.php +++ b/phpBB/phpbb/storage/adapter/adapter_interface.php @@ -99,7 +99,9 @@ interface adapter_interface /* * Get space available in bytes. * - * @return mixed Returns available space or false when unable to retrieve available space + * @throws \phpbb\storage\exception\exception When unable to retrieve available storage space + * + * @return float Returns available space */ public function free_space(); } diff --git a/phpBB/phpbb/storage/adapter/local.php b/phpBB/phpbb/storage/adapter/local.php index 3cde5a4fbb..fbbb92fb17 100644 --- a/phpBB/phpbb/storage/adapter/local.php +++ b/phpBB/phpbb/storage/adapter/local.php @@ -432,6 +432,11 @@ class local implements adapter_interface, stream_interface { $free_space = @disk_free_space($this->root_path); + if ($free_space === false) + { + throw new exception('STORAGE_CANNOT_GET_FREE_SPACE'); + } + return $free_space; } } diff --git a/phpBB/phpbb/storage/storage.php b/phpBB/phpbb/storage/storage.php index ad5d0ed240..7e84e49e62 100644 --- a/phpBB/phpbb/storage/storage.php +++ b/phpBB/phpbb/storage/storage.php @@ -390,13 +390,12 @@ class storage /** * Get space available in bytes. * - * @throws \phpbb\storage\exception\exception When can't get available space + * @throws \phpbb\storage\exception\exception When unable to retrieve available storage space * - * @return mixed Returns available space or false when unable to retrieve available space + * @return float Returns available space */ public function free_space() { return $this->get_adapter()->free_space(); } - }