diff options
author | Lukas Reschke <lukas@statuscode.ch> | 2016-08-19 14:46:20 +0200 |
---|---|---|
committer | Lukas Reschke <lukas@statuscode.ch> | 2016-08-19 14:48:13 +0200 |
commit | d50e7ee36c5607da848702ca36f7b34505c1622e (patch) | |
tree | c2c4b9ac0783472417a97e777125b8b660495035 | |
parent | cb7b44d33d276ccc0bc305d1af50c10eb5802191 (diff) | |
download | nextcloud-server-d50e7ee36c5607da848702ca36f7b34505c1622e.tar.gz nextcloud-server-d50e7ee36c5607da848702ca36f7b34505c1622e.zip |
Remove reading PATH_INFO from server variable
Having two code paths for this is unreliable and can lead to bugs. Also, in some cases Apache isn't setting the PATH_INFO variable when mod_rewrite is used.
Fixes https://github.com/nextcloud/server/issues/983
-rw-r--r-- | lib/private/AppFramework/Http/Request.php | 4 | ||||
-rw-r--r-- | tests/lib/AppFramework/Http/RequestTest.php | 16 |
2 files changed, 0 insertions, 20 deletions
diff --git a/lib/private/AppFramework/Http/Request.php b/lib/private/AppFramework/Http/Request.php index 2139ad05c2e..46122f880cc 100644 --- a/lib/private/AppFramework/Http/Request.php +++ b/lib/private/AppFramework/Http/Request.php @@ -700,10 +700,6 @@ class Request implements \ArrayAccess, \Countable, IRequest { * @return string|false Path info or false when not found */ public function getPathInfo() { - if(isset($this->server['PATH_INFO'])) { - return $this->server['PATH_INFO']; - } - $pathInfo = $this->getRawPathInfo(); // following is taken from \Sabre\HTTP\URLUtil::decodePathSegment $pathInfo = rawurldecode($pathInfo); diff --git a/tests/lib/AppFramework/Http/RequestTest.php b/tests/lib/AppFramework/Http/RequestTest.php index 8df81afeb3b..a3433e558d8 100644 --- a/tests/lib/AppFramework/Http/RequestTest.php +++ b/tests/lib/AppFramework/Http/RequestTest.php @@ -1063,22 +1063,6 @@ class RequestTest extends \Test\TestCase { $this->assertSame('www.owncloud.org', self::invokePrivate($request, 'getOverwriteHost')); } - public function testGetPathInfoWithSetEnv() { - $request = new Request( - [ - 'server' => [ - 'PATH_INFO' => 'apps/files/', - ] - ], - $this->secureRandom, - $this->config, - $this->csrfTokenManager, - $this->stream - ); - - $this->assertSame('apps/files/', $request->getPathInfo()); - } - /** * @expectedException \Exception * @expectedExceptionMessage The requested uri(/foo.php) cannot be processed by the script '/var/www/index.php') |