Fixed a bug in which identifers were not being escaped properly when reserved characters were used
diff --git a/system/database/drivers/mssql/mssql_driver.php b/system/database/drivers/mssql/mssql_driver.php
index 72dc263..6ad0880 100644
--- a/system/database/drivers/mssql/mssql_driver.php
+++ b/system/database/drivers/mssql/mssql_driver.php
@@ -427,7 +427,18 @@
 		{

 			return $item;

 		}

-	

+

+		foreach ($this->_reserved_identifiers as $id)

+		{

+			if (strpos($item, '.'.$id) !== FALSE)

+			{

+				$str = $this->_escape_char. str_replace('.', $this->_escape_char.'.', $item);  

+				

+				// remove duplicates if the user already included the escape

+				return preg_replace('/['.$this->_escape_char.']+/', $this->_escape_char, $str);

+			}		

+		}

+

 		if (strpos($item, '.') !== FALSE)

 		{

 			$str = $this->_escape_char.str_replace('.', $this->_escape_char.'.'.$this->_escape_char, $item).$this->_escape_char;