protected char[] appendPathOnFileSystem(int pathLength, int[] position) {
Object o = rawName();
String suffix = getEncodedSuffix();
int rawNameLength = o instanceof String ? ((String)o).length() : ((byte[])o).length;
int nameLength = rawNameLength + suffix.length();
<BUG>boolean appendSlash = SystemInfo.isWindows && myParent == null && suffix.length() == 0 && rawNameLength == 2 &&
</BUG>
(o instanceof String ? ((String)o).charAt(1) : (char)((byte[])o)[1]) == ':';
char[] chars;
if (myParent != null) {

protected char[] appendPathOnFileSystem(int pathLength, int[] position) {
Object o = rawName();
String suffix = getEncodedSuffix();
int rawNameLength = o instanceof String ? ((String)o).length() : ((byte[])o).length;
int nameLength = rawNameLength + suffix.length();
boolean appendSlash = SystemInfo.isWindows && myParent == null && suffix.isEmpty() && rawNameLength == 2 &&
(o instanceof String ? ((String)o).charAt(1) : (char)((byte[])o)[1]) == ':';
char[] chars;
if (myParent != null) {
