in src/main/java/org/apache/commons/imaging/common/BasicCParser.java [110:163]
private static int parseEscape(int i, final StringBuilder stringBuilder, final String string)
throws ImagingException {
final char c = string.charAt(i);
switch (c) {
case '\\':
stringBuilder.append('\\');
break;
case '"':
stringBuilder.append('"');
break;
case '\'':
stringBuilder.append('\'');
break;
case 'x':
i = appendHex(i, stringBuilder, string);
break;
case '0':
case '1':
case '2':
case '3':
case '4':
case '5':
case '6':
case '7':
i = appendOct(i, stringBuilder, string);
break;
case 'a':
stringBuilder.append((char) 0x07);
break;
case 'b':
stringBuilder.append((char) 0x08);
break;
case 'f':
stringBuilder.append((char) 0x0c);
break;
case 'n':
stringBuilder.append((char) 0x0a);
break;
case 'r':
stringBuilder.append((char) 0x0d);
break;
case 't':
stringBuilder.append((char) 0x09);
break;
case 'v':
stringBuilder.append((char) 0x0b);
break;
default:
throw new ImagingException("Parsing XPM file failed, "
+ "invalid escape sequence");
}
return i;
}