From: stronk7 <stronk7>
Date: Tue, 4 Aug 2009 15:41:00 +0000 (+0000)
Subject: NOBUG: Extend param_file and param_path to nicely support utf-8 chars
X-Git-Url: http://git.mjollnir.org/gw?a=commitdiff_plain;h=4d51214ae93b08dbc1359cea28f2234509a9b861;p=moodle.git

NOBUG: Extend param_file and param_path to nicely support utf-8 chars
---

diff --git a/lib/moodlelib.php b/lib/moodlelib.php
index 826741a8e5..b16c9c9149 100644
--- a/lib/moodlelib.php
+++ b/lib/moodlelib.php
@@ -476,7 +476,7 @@ function clean_param($param, $type) {
             return preg_replace('/[^a-zA-Z0-9\/_-]/i', '', $param); 
 
         case PARAM_FILE:         // Strip all suspicious characters from filename
-            $param = preg_replace('~[[:cntrl:]]|[&<>"`\|\':\\/]~', '', $param);
+            $param = preg_replace('~[[:cntrl:]]|[&<>"`\|\':\\/]~u', '', $param);
             $param = preg_replace('~\.\.+~', '', $param);
             if ($param === '.') {
                 $param = '';
@@ -485,7 +485,7 @@ function clean_param($param, $type) {
 
         case PARAM_PATH:         // Strip all suspicious characters from file path
             $param = str_replace('\\', '/', $param);
-            $param = preg_replace('~[[:cntrl:]]|[&<>"`\|\':]~', '', $param);
+            $param = preg_replace('~[[:cntrl:]]|[&<>"`\|\':]~u', '', $param);
             $param = preg_replace('~\.\.+~', '', $param);
             $param = preg_replace('~//+~', '/', $param);
             return preg_replace('~/(\./)+~', '/', $param);