aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/phpbb/path_helper.php
diff options
context:
space:
mode:
authorNils Adermann <naderman@naderman.de>2014-11-16 16:50:29 +0100
committerNils Adermann <naderman@naderman.de>2014-11-16 16:50:29 +0100
commit6104be6b4d37f6ce569fde95c88400724dabac13 (patch)
treed92f43d438d5b6516a3538f826c81fe29522f2ab /phpBB/phpbb/path_helper.php
parentf1b88706b8930186c8a2dbe216769e2f8350af38 (diff)
parent4ffdb129388d72cdcc790f1c3713e3770d8aeca9 (diff)
downloadforums-6104be6b4d37f6ce569fde95c88400724dabac13.tar
forums-6104be6b4d37f6ce569fde95c88400724dabac13.tar.gz
forums-6104be6b4d37f6ce569fde95c88400724dabac13.tar.bz2
forums-6104be6b4d37f6ce569fde95c88400724dabac13.tar.xz
forums-6104be6b4d37f6ce569fde95c88400724dabac13.zip
Merge branch 'develop-ascraeus' into develop
* develop-ascraeus: [ticket/13280] Output escaping for the symfony request object [ticket/13280] Add new tests [ticket/13280] Make the tests failing [ticket/13280] Revert "Merge pull request #3107 from marc1706/ticket/13280"
Diffstat (limited to 'phpBB/phpbb/path_helper.php')
-rw-r--r--phpBB/phpbb/path_helper.php6
1 files changed, 5 insertions, 1 deletions
diff --git a/phpBB/phpbb/path_helper.php b/phpBB/phpbb/path_helper.php
index 936564d8b6..4a446a5d9d 100644
--- a/phpBB/phpbb/path_helper.php
+++ b/phpBB/phpbb/path_helper.php
@@ -154,6 +154,7 @@ class path_helper
return $this->web_root_path;
}
+ // We do not need to escape $path_info, $request_uri and $script_name because we can not find their content in the result.
// Path info (e.g. /foo/bar)
$path_info = $this->filesystem->clean_path($this->symfony_request->getPathInfo());
@@ -203,9 +204,12 @@ class path_helper
*/
if ($this->request->is_ajax() && $this->symfony_request->get('_referer'))
{
+ // We need to escape $absolute_board_url because it can be partially concatenated to the result.
+ $absolute_board_url = $this->request->escape($this->symfony_request->getSchemeAndHttpHost() . $this->symfony_request->getBasePath(), true);
+
$referer_web_root_path = $this->get_web_root_path_from_ajax_referer(
$this->symfony_request->get('_referer'),
- $this->symfony_request->getSchemeAndHttpHost() . $this->symfony_request->getBasePath()
+ $absolute_board_url
);
return $this->web_root_path = $this->phpbb_root_path . $referer_web_root_path;
}