aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCesar G <prototech91@gmail.com>2014-05-06 14:54:51 -0700
committerCesar G <prototech91@gmail.com>2014-05-06 15:58:10 -0700
commiteddb4203757366eef2afc81d53d948d3aaeed0c7 (patch)
tree8ca58901369ac2d6d37c351c82a4c3ed60d813a9
parent3c86a9bcca0301176d35ded3f4a8bf8c485f027f (diff)
downloadforums-eddb4203757366eef2afc81d53d948d3aaeed0c7.tar
forums-eddb4203757366eef2afc81d53d948d3aaeed0c7.tar.gz
forums-eddb4203757366eef2afc81d53d948d3aaeed0c7.tar.bz2
forums-eddb4203757366eef2afc81d53d948d3aaeed0c7.tar.xz
forums-eddb4203757366eef2afc81d53d948d3aaeed0c7.zip
[ticket/12510] Convert & to &amp; in build_url() when no params are stripped.
PHPBB3-12510
-rw-r--r--phpBB/includes/functions.php4
-rw-r--r--tests/functions/build_url_test.php5
2 files changed, 9 insertions, 0 deletions
diff --git a/phpBB/includes/functions.php b/phpBB/includes/functions.php
index 3480a338c0..a0e2a46f54 100644
--- a/phpBB/includes/functions.php
+++ b/phpBB/includes/functions.php
@@ -2356,6 +2356,10 @@ function build_url($strip_vars = false)
{
$redirect = $phpbb_path_helper->strip_url_params($redirect, $strip_vars, false);
}
+ else
+ {
+ $redirect = str_replace('&', '&amp;', $redirect);
+ }
return $redirect . ((strpos($redirect, '?') === false) ? '?' : '');
}
diff --git a/tests/functions/build_url_test.php b/tests/functions/build_url_test.php
index 795427ffe8..ad36f29b8c 100644
--- a/tests/functions/build_url_test.php
+++ b/tests/functions/build_url_test.php
@@ -45,6 +45,11 @@ class phpbb_build_url_test extends phpbb_test_case
'phpBB/index.php?',
),
array(
+ 'viewtopic.php?t=5&f=4',
+ false,
+ 'phpBB/viewtopic.php?t=5&amp;f=4',
+ ),
+ array(
'viewtopic.php?f=2&style=1&t=6',
'f',
'phpBB/viewtopic.php?style=1&amp;t=6',