diff --git a/core/util.inc.php b/core/util.inc.php index 5a8a956f..618eea3d 100644 --- a/core/util.inc.php +++ b/core/util.inc.php @@ -13,9 +13,9 @@ function int_escape($input) { } function url_escape($input) { - $input = str_replace('/', '//', $input); + $input = str_replace('^', '^^', $input); + $input = str_replace('/', '^s', $input); $input = rawurlencode($input); - $input = str_replace('%2F', '/', $input); return $input; } @@ -385,6 +385,27 @@ function send_event(Event $event) { * Request initialisation stuff * \* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ +/* + * Turn ^^ into ^ and ^s into / + * + * Necessary because various servers and various clients + * think that / is special... + */ +function _decaret($str) { + $out = ""; + for($i=0; $i