Bug 135386: Linking secrets with colon in the name - FIXED

This commit is contained in:
Jim Norman
2006-02-17 21:05:10 +00:00
parent 95e66ba8b8
commit d7bf9b40a5
7 changed files with 113 additions and 42 deletions

View File

@@ -0,0 +1,61 @@
using System;
using System.Collections.Generic;
using System.Text;
namespace Novell.CASA.MiCasa.Common
{
class Utils
{
public static string EscapeReservedChars(string origString)
{
StringBuilder sb = new StringBuilder();
for (int i = 0; i < origString.Length; i++)
{
switch (origString[i])
{
case ':':
{
sb.Append("\\");
break;
}
case '\\':
{
sb.Append("\\");
break;
}
case '=':
{
sb.Append("\\");
break;
}
}
sb.Append(origString[i]);
}
return sb.ToString();
}
public static string UnescapeString(string sOrig)
{
StringBuilder sb = new StringBuilder();
for (int i = 0; i < sOrig.Length; i++)
{
if (sOrig[i].Equals('\\'))
{
if (i + 1 < sOrig.Length)
{
if (sOrig[i + 1].Equals(':')
|| sOrig[i + 1].Equals('\\')
|| sOrig[i + 1].Equals('='))
{
i++;
}
}
}
sb.Append(sOrig[i]);
}
return sb.ToString();
}
}
}