From 8c7c25ae636e9890a1a732e5eec7f5335d5f1386 Mon Sep 17 00:00:00 2001 From: Peter van Dommelen Date: Mon, 9 Sep 2013 13:08:58 +0200 Subject: [PATCH 1/2] Added failing testcase for a query parameter overriding the _format request attribute --- src/Symfony/Component/HttpFoundation/Tests/RequestTest.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/Symfony/Component/HttpFoundation/Tests/RequestTest.php b/src/Symfony/Component/HttpFoundation/Tests/RequestTest.php index 42f5500980fd8..6c8d47dcae43a 100644 --- a/src/Symfony/Component/HttpFoundation/Tests/RequestTest.php +++ b/src/Symfony/Component/HttpFoundation/Tests/RequestTest.php @@ -1188,6 +1188,9 @@ public function testGetRequestFormat() $request = new Request(); $this->assertNull($request->setRequestFormat('foo')); $this->assertEquals('foo', $request->getRequestFormat(null)); + + $request = new Request(array('_format' => 'foo')); + $this->assertEquals('html', $request->getRequestFormat()); } public function testHasSession() From b4749bb4c94fadfa3b44eefc96949db369b426ad Mon Sep 17 00:00:00 2001 From: Peter van Dommelen Date: Mon, 9 Sep 2013 13:20:21 +0200 Subject: [PATCH 2/2] Fixes query parameters overriding request attributes for the _format attribute. --- src/Symfony/Component/HttpFoundation/Request.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Symfony/Component/HttpFoundation/Request.php b/src/Symfony/Component/HttpFoundation/Request.php index 8f04352a307a1..d5e4aac1e730b 100644 --- a/src/Symfony/Component/HttpFoundation/Request.php +++ b/src/Symfony/Component/HttpFoundation/Request.php @@ -1218,7 +1218,7 @@ public function setFormat($format, $mimeTypes) public function getRequestFormat($default = 'html') { if (null === $this->format) { - $this->format = $this->get('_format', $default); + $this->format = $this->attributes->get('_format', $default); } return $this->format;