in command.line/java/com/jetbrains/teamcity/Util.java [339:360]
public static String encode(String src) {
boolean decoded = false;
int length = src.length();
ByteArrayOutputStream bos = new ByteArrayOutputStream(length);
for (int i = 0; i < length; i++) {
byte ch = (byte) src.charAt(i);
if (ch == '%' && i + 2 < length && isHexDigit(src.charAt(i + 1)) && isHexDigit(src.charAt(i + 2))) {
ch = (byte) (hexValue(src.charAt(i + 1)) * 0x10 + hexValue(src.charAt(i + 2)));
decoded = true;
i += 2;
}
bos.write(ch);
}
if (!decoded) {
return src;
}
try {
return new String(bos.toByteArray(), "UTF-8"); //$NON-NLS-1$
} catch (UnsupportedEncodingException ignored) {
}
return src;
}