1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-02-23 19:45:10 +01:00

[ticket/13358] Do not pass variables by reference

PHPBB3-13358
This commit is contained in:
Marc Alexander 2014-11-21 23:16:22 +01:00
parent 352648f173
commit 171837eefe
3 changed files with 21 additions and 25 deletions

View File

@ -2990,11 +2990,13 @@ function get_remote_file($host, $directory, $filename, &$errstr, &$errno, $port
global $phpbb_container;
// Get file downloader and assign $errstr and $errno
$file_downloader = $phpbb_container->get('file_downloader')
->set_error_string($errstr)
->set_error_number($errno);
$file_downloader = $phpbb_container->get('file_downloader');
return $file_downloader->get($host, $directory, $filename, $port, $timeout);
$file_data = $file_downloader->get($host, $directory, $filename, $port, $timeout);
$errstr = $file_downloader->get_error_string();
$errno = $file_downloader->get_error_number();
return $file_data;
}
/*

View File

@ -38,6 +38,10 @@ class file_downloader
*/
function get($host, $directory, $filename, $port = 80, $timeout = 6)
{
// Set default values for error variables
$this->error_number = 0;
$this->error_string = '';
if ($socket = @fsockopen($host, $port, $this->error_number, $this->error_string, $timeout))
{
@fputs($socket, "GET $directory/$filename HTTP/1.0\r\n");
@ -95,30 +99,22 @@ class file_downloader
}
/**
* Set error string
* Get error string
*
* @param string $error_string Error string
*
* @return self
* @return string Error string
*/
public function set_error_string(&$error_string)
public function get_error_string()
{
$this->error_string = &$error_string;
return $this;
return $this->error_string;
}
/**
* Set error number
* Get error number
*
* @param int $error_number Error number
*
* @return self
* @return int Error number
*/
public function set_error_number(&$error_number)
public function get_error_number()
{
$this->error_number = &$error_number;
return $this;
return $this->error_number;
}
}

View File

@ -254,9 +254,6 @@ class version_helper
}
else if ($info === false || $force_update)
{
$errstr = $errno = '';
$this->file_downloader->set_error_number($errno)
->set_error_string($errstr);
try {
$info = $this->file_downloader->get($this->host, $this->path, $this->file);
}
@ -264,10 +261,11 @@ class version_helper
{
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);