From 15ae43bc55fffc8a9ccbf8215883532daf0d4a82 Mon Sep 17 00:00:00 2001
From: Borek Bernard <borekb@gmail.com>
Date: Mon, 27 Feb 2012 20:42:06 +0100
Subject: [PATCH] Colon is no longer rewritten to semicolon for IIS 7.x and for
 older versions of IIS, semicolon is displayed as is, not URL-encoded.

---
 inc/common.php | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/inc/common.php b/inc/common.php
index 0c769c50d..26904dd46 100644
--- a/inc/common.php
+++ b/inc/common.php
@@ -323,12 +323,14 @@ function idfilter($id,$ue=true){
     if ($conf['useslash'] && $conf['userewrite']){
         $id = strtr($id,':','/');
     }elseif (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN' &&
-            $conf['userewrite']) {
+            $conf['userewrite'] && 
+            strpos($_SERVER['SERVER_SOFTWARE'], 'Microsoft-IIS/7.') === false) {
         $id = strtr($id,':',';');
     }
     if($ue){
         $id = rawurlencode($id);
         $id = str_replace('%3A',':',$id); //keep as colon
+        $id = str_replace('%3B',';',$id); //keep as semicolon
         $id = str_replace('%2F','/',$id); //keep as slash
     }
     return $id;
-- 
GitLab