summaryrefslogtreecommitdiffstats
path: root/system/libraries/URI.php
diff options
context:
space:
mode:
authorDerek Jones <derek.jones@ellislab.com>2009-07-29 16:19:18 +0200
committerDerek Jones <derek.jones@ellislab.com>2009-07-29 16:19:18 +0200
commitf0a9b332445977cfb05fee2dacc02667946a9cd2 (patch)
tree740e6f0bca8932f75c60ba7aa35831783e567764 /system/libraries/URI.php
parentde8f409e84c4b2c428cba3f2845f2658d3db9b90 (diff)
PHP 5.3.0 compatibility changes
Diffstat (limited to 'system/libraries/URI.php')
-rw-r--r--system/libraries/URI.php4
1 files changed, 3 insertions, 1 deletions
diff --git a/system/libraries/URI.php b/system/libraries/URI.php
index efc7a18b3..68b678053 100644
--- a/system/libraries/URI.php
+++ b/system/libraries/URI.php
@@ -186,7 +186,9 @@ class CI_URI {
{
if ($str != '' && $this->config->item('permitted_uri_chars') != '' && $this->config->item('enable_query_strings') == FALSE)
{
- if ( ! preg_match("|^[".preg_quote($this->config->item('permitted_uri_chars'))."]+$|i", $str))
+ // preg_quote() in PHP 5.3 escapes -, so the str_replace() and addition of - to preg_quote() is to maintain backwards
+ // compatibility as many are unaware of how characters in the permitted_uri_chars will be parsed as a regex pattern
+ if ( ! preg_match("|^[".str_replace(array('\\-', '\-'), '-', preg_quote($this->config->item('permitted_uri_chars'), '-'))."]+$|i", $str))
{
show_error('The URI you submitted has disallowed characters.', 400);
}