mirror of
https://github.com/yiisoft/yii2.git
synced 2025-11-22 09:40:41 +08:00
Fixes #1844: Calling Response::sendFile() would cause sending the response twice
This commit is contained in:
@@ -24,6 +24,7 @@ Yii Framework 2 Change Log
|
|||||||
- Bug #1798: Fixed label attributes for array fields (zhuravljov)
|
- Bug #1798: Fixed label attributes for array fields (zhuravljov)
|
||||||
- Bug #1800: Better check for `$_SERVER['HTTPS']` in `yii\web\Request::getIsSecureConnection()` (ginus, samdark)
|
- Bug #1800: Better check for `$_SERVER['HTTPS']` in `yii\web\Request::getIsSecureConnection()` (ginus, samdark)
|
||||||
- Bug #1827: Debugger toolbar is loaded twice if an action is calling `run()` to execute another action (qiangxue)
|
- Bug #1827: Debugger toolbar is loaded twice if an action is calling `run()` to execute another action (qiangxue)
|
||||||
|
- Bug #1844: Calling `Response::sendFile()` would cause sending the response twice (qiangxue)
|
||||||
- Bug: Fixed `Call to a member function registerAssetFiles() on a non-object` in case of wrong `sourcePath` for an asset bundle (samdark)
|
- Bug: Fixed `Call to a member function registerAssetFiles() on a non-object` in case of wrong `sourcePath` for an asset bundle (samdark)
|
||||||
- Bug: Fixed incorrect event name for `yii\jui\Spinner` (samdark)
|
- Bug: Fixed incorrect event name for `yii\jui\Spinner` (samdark)
|
||||||
- Bug: Json::encode() did not handle objects that implement JsonSerializable interface correctly (cebe)
|
- Bug: Json::encode() did not handle objects that implement JsonSerializable interface correctly (cebe)
|
||||||
|
|||||||
@@ -135,6 +135,10 @@ class Response extends \yii\base\Response
|
|||||||
* or '1.1' if that is not available.
|
* or '1.1' if that is not available.
|
||||||
*/
|
*/
|
||||||
public $version;
|
public $version;
|
||||||
|
/**
|
||||||
|
* @var boolean whether the response has been sent. If this is true, calling [[send()]] will do nothing.
|
||||||
|
*/
|
||||||
|
public $isSent = false;
|
||||||
/**
|
/**
|
||||||
* @var array list of HTTP status codes and the corresponding texts
|
* @var array list of HTTP status codes and the corresponding texts
|
||||||
*/
|
*/
|
||||||
@@ -281,6 +285,11 @@ class Response extends \yii\base\Response
|
|||||||
*/
|
*/
|
||||||
public function send()
|
public function send()
|
||||||
{
|
{
|
||||||
|
if ($this->isSent) {
|
||||||
|
return;
|
||||||
|
} else {
|
||||||
|
$this->isSent = true;
|
||||||
|
}
|
||||||
$this->trigger(self::EVENT_BEFORE_SEND);
|
$this->trigger(self::EVENT_BEFORE_SEND);
|
||||||
$this->prepare();
|
$this->prepare();
|
||||||
$this->trigger(self::EVENT_AFTER_PREPARE);
|
$this->trigger(self::EVENT_AFTER_PREPARE);
|
||||||
@@ -300,6 +309,7 @@ class Response extends \yii\base\Response
|
|||||||
$this->statusText = 'OK';
|
$this->statusText = 'OK';
|
||||||
$this->data = null;
|
$this->data = null;
|
||||||
$this->content = null;
|
$this->content = null;
|
||||||
|
$this->isSent = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Reference in New Issue
Block a user