mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-28 14:18:52 +00:00
[ticket/11212] Do not rely on $request in send_status_line()
PHPBB3-11212
This commit is contained in:
parent
65dde648ca
commit
5fad4006e1
1 changed files with 25 additions and 10 deletions
|
@ -2858,8 +2858,6 @@ function meta_refresh($time, $url, $disable_cd_check = false)
|
||||||
*/
|
*/
|
||||||
function send_status_line($code, $message)
|
function send_status_line($code, $message)
|
||||||
{
|
{
|
||||||
global $request;
|
|
||||||
|
|
||||||
if (substr(strtolower(@php_sapi_name()), 0, 3) === 'cgi')
|
if (substr(strtolower(@php_sapi_name()), 0, 3) === 'cgi')
|
||||||
{
|
{
|
||||||
// in theory, we shouldn't need that due to php doing it. Reality offers a differing opinion, though
|
// in theory, we shouldn't need that due to php doing it. Reality offers a differing opinion, though
|
||||||
|
@ -2867,18 +2865,35 @@ function send_status_line($code, $message)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if ($request->server('SERVER_PROTOCOL'))
|
$version = get_http_version();
|
||||||
{
|
|
||||||
$version = $request->server('SERVER_PROTOCOL');
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
$version = 'HTTP/1.0';
|
|
||||||
}
|
|
||||||
header("$version $code $message", true, $code);
|
header("$version $code $message", true, $code);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the HTTP version used in the current request.
|
||||||
|
*
|
||||||
|
* Handles the case of being called before `$request` is present,
|
||||||
|
* In which case it falls back to the $_SERVER superglobal.
|
||||||
|
*
|
||||||
|
* @return string HTTP version
|
||||||
|
*/
|
||||||
|
function get_http_version()
|
||||||
|
{
|
||||||
|
global $request;
|
||||||
|
|
||||||
|
if ($request && $request->server('SERVER_PROTOCOL'))
|
||||||
|
{
|
||||||
|
return $request->server('SERVER_PROTOCOL');
|
||||||
|
}
|
||||||
|
else if (isset($_SERVER['SERVER_PROTOCOL']))
|
||||||
|
{
|
||||||
|
return $_SERVER['SERVER_PROTOCOL'];
|
||||||
|
}
|
||||||
|
|
||||||
|
return 'HTTP/1.0';
|
||||||
|
}
|
||||||
|
|
||||||
//Form validation
|
//Form validation
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue