public static boolean fixSeparators()

in commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/UriParser.java [455:479]


    public static boolean fixSeparators(final StringBuilder name) {
        boolean changed = false;
        int maxlen = name.length();
        for (int i = 0; i < maxlen; i++) {
            final char ch = name.charAt(i);
            if (ch == TRANS_SEPARATOR) {
                name.setCharAt(i, SEPARATOR_CHAR);
                changed = true;
            }
            if (i < maxlen - 2 && name.charAt(i) == '%' && name.charAt(i + 1) == '2') {
                if (name.charAt(i + 2) == 'f' || name.charAt(i + 2) == 'F') {
                    name.setCharAt(i, SEPARATOR_CHAR);
                    name.delete(i + 1, i + 3);
                    maxlen -= 2;
                    changed = true;
                } else if (name.charAt(i + 2) == 'e' || name.charAt(i + 2) == 'E') {
                    name.setCharAt(i, '.');
                    name.delete(i + 1, i + 3);
                    maxlen -= 2;
                    changed = true;
                }
            }
        }
        return changed;
    }