Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 0892135

Browse files
committed
[HttpKernel] ensured that the Request is null when outside of the Request scope
1 parent 2ffcfb9 commit 0892135

File tree

2 files changed

+15
-3
lines changed

2 files changed

+15
-3
lines changed

src/Symfony/Component/HttpKernel/DependencyInjection/ContainerAwareHttpKernel.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,11 +56,13 @@ public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQ
5656
try {
5757
$response = parent::handle($request, $type, $catch);
5858
} catch (\Exception $e) {
59+
$this->container->set('request', null, 'request');
5960
$this->container->leaveScope('request');
6061

6162
throw $e;
6263
}
6364

65+
$this->container->set('request', null, 'request');
6466
$this->container->leaveScope('request');
6567

6668
return $response;

src/Symfony/Component/HttpKernel/Tests/DependencyInjection/ContainerAwareHttpKernelTest.php

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
* file that was distributed with this source code.
1010
*/
1111

12-
namespace Symfony\Component\HttpKernel\Tests;
12+
namespace Symfony\Component\HttpKernel\Tests\DependencyInjection;
1313

1414
use Symfony\Component\HttpKernel\HttpKernelInterface;
1515
use Symfony\Component\HttpKernel\DependencyInjection\ContainerAwareHttpKernel;
@@ -54,10 +54,15 @@ public function testHandle($type)
5454
->with($this->equalTo('request'))
5555
;
5656
$container
57-
->expects($this->once())
57+
->expects($this->at(1))
5858
->method('set')
5959
->with($this->equalTo('request'), $this->equalTo($request), $this->equalTo('request'))
6060
;
61+
$container
62+
->expects($this->at(2))
63+
->method('set')
64+
->with($this->equalTo('request'), $this->equalTo(null), $this->equalTo('request'))
65+
;
6166

6267
$dispatcher = new EventDispatcher();
6368
$resolver = $this->getMock('Symfony\\Component\\HttpKernel\\Controller\\ControllerResolverInterface');
@@ -101,10 +106,15 @@ public function testHandleRestoresThePreviousRequestOnException($type)
101106
->with($this->equalTo('request'))
102107
;
103108
$container
104-
->expects($this->once())
109+
->expects($this->at(1))
105110
->method('set')
106111
->with($this->equalTo('request'), $this->equalTo($request), $this->equalTo('request'))
107112
;
113+
$container
114+
->expects($this->at(2))
115+
->method('set')
116+
->with($this->equalTo('request'), $this->equalTo(null), $this->equalTo('request'))
117+
;
108118

109119
$dispatcher = new EventDispatcher();
110120
$resolver = $this->getMock('Symfony\\Component\\HttpKernel\\Controller\\ControllerResolverInterface');

0 commit comments

Comments
 (0)