diff options
| author | Marc Alexander <admin@m-a-styles.de> | 2014-11-21 23:37:17 +0100 |
|---|---|---|
| committer | Marc Alexander <admin@m-a-styles.de> | 2014-11-21 23:37:17 +0100 |
| commit | 9649d78fa4cb2583936bbef255d390dfcbb7b28c (patch) | |
| tree | 3391f45d55175c1332748cd75e2ebd9fee23a449 /phpBB/phpbb/version_helper.php | |
| parent | 4ee05b1c17fa1be0c911c9d37e106f19b23ebac2 (diff) | |
| parent | 6d3ac29aeef9e1222ddcaeab066ca8325d147fee (diff) | |
| download | forums-9649d78fa4cb2583936bbef255d390dfcbb7b28c.tar forums-9649d78fa4cb2583936bbef255d390dfcbb7b28c.tar.gz forums-9649d78fa4cb2583936bbef255d390dfcbb7b28c.tar.bz2 forums-9649d78fa4cb2583936bbef255d390dfcbb7b28c.tar.xz forums-9649d78fa4cb2583936bbef255d390dfcbb7b28c.zip | |
Merge branch 'ticket/13358' into ticket/security-171
Diffstat (limited to 'phpBB/phpbb/version_helper.php')
| -rw-r--r-- | phpBB/phpbb/version_helper.php | 21 |
1 files changed, 16 insertions, 5 deletions
diff --git a/phpBB/phpbb/version_helper.php b/phpBB/phpbb/version_helper.php index bcc67712e4..8c106cf758 100644 --- a/phpBB/phpbb/version_helper.php +++ b/phpBB/phpbb/version_helper.php @@ -50,6 +50,9 @@ class version_helper /** @var \phpbb\config\config */ protected $config; + /** @var \phpbb\file_downloader */ + protected $file_downloader; + /** @var \phpbb\user */ protected $user; @@ -58,12 +61,14 @@ class version_helper * * @param \phpbb\cache\service $cache * @param \phpbb\config\config $config + * @param \phpbb\file_downloader $file_downloader * @param \phpbb\user $user */ - public function __construct(\phpbb\cache\service $cache, \phpbb\config\config $config, \phpbb\user $user) + public function __construct(\phpbb\cache\service $cache, \phpbb\config\config $config, file_downloader $file_downloader, \phpbb\user $user) { $this->cache = $cache; $this->config = $config; + $this->file_downloader = $file_downloader; $this->user = $user; if (defined('PHPBB_QA')) @@ -249,12 +254,18 @@ class version_helper } else if ($info === false || $force_update) { - $errstr = $errno = ''; - $info = get_remote_file($this->host, $this->path, $this->file, $errstr, $errno); + try { + $info = $this->file_downloader->get($this->host, $this->path, $this->file); + } + catch (\RuntimeException $exception) + { + throw new \RuntimeException(call_user_func_array(array($this->user, 'lang'), $exception->getMessage())); + } + $error_string = $this->file_downloader->get_error_string(); - if (!empty($errstr)) + if (!empty($error_string)) { - throw new \RuntimeException($errstr); + throw new \RuntimeException($error_string); } $info = json_decode($info, true); |
