summaryrefslogtreecommitdiffstats
path: root/lib/request.php
diff options
context:
space:
mode:
Diffstat (limited to 'lib/request.php')
-rw-r--r--lib/request.php11
1 files changed, 11 insertions, 0 deletions
diff --git a/lib/request.php b/lib/request.php
index 9e38e6bbd13..3fe61fbddcd 100644
--- a/lib/request.php
+++ b/lib/request.php
@@ -61,6 +61,17 @@ class OC_Request {
$path_info = $_SERVER['PATH_INFO'];
}else{
$path_info = substr($_SERVER['REQUEST_URI'], strlen($_SERVER['SCRIPT_NAME']));
+ // following is taken from Sabre_DAV_URLUtil::decodePathSegment
+ $path_info = rawurldecode($path_info);
+ $encoding = mb_detect_encoding($path_info, array('UTF-8','ISO-8859-1'));
+
+ switch($encoding) {
+
+ case 'ISO-8859-1' :
+ $path_info = utf8_encode($path_info);
+
+ }
+ // end copy
}
return $path_info;
}