jdk/src/solaris/classes/sun/nio/fs/LinuxUserDefinedFileAttributeView.java
changeset 21290 db5e0cad1102
parent 13246 a54c4f70775c
child 23010 6dadb192ad81
equal deleted inserted replaced
21289:95fcae9543b4 21290:db5e0cad1102
    51 
    51 
    52     private byte[] nameAsBytes(UnixPath file, String name) throws IOException {
    52     private byte[] nameAsBytes(UnixPath file, String name) throws IOException {
    53         if (name == null)
    53         if (name == null)
    54             throw new NullPointerException("'name' is null");
    54             throw new NullPointerException("'name' is null");
    55         name = USER_NAMESPACE + name;
    55         name = USER_NAMESPACE + name;
    56         byte[] bytes = name.getBytes();
    56         byte[] bytes = Util.toBytes(name);
    57         if (bytes.length > XATTR_NAME_MAX) {
    57         if (bytes.length > XATTR_NAME_MAX) {
    58             throw new FileSystemException(file.getPathForExceptionMessage(),
    58             throw new FileSystemException(file.getPathForExceptionMessage(),
    59                 null, "'" + name + "' is too big");
    59                 null, "'" + name + "' is too big");
    60         }
    60         }
    61         return bytes;
    61         return bytes;
    70             if (unsafe.getByte(address + pos) == 0) {
    70             if (unsafe.getByte(address + pos) == 0) {
    71                 int len = pos - start;
    71                 int len = pos - start;
    72                 byte[] value = new byte[len];
    72                 byte[] value = new byte[len];
    73                 unsafe.copyMemory(null, address+start, value,
    73                 unsafe.copyMemory(null, address+start, value,
    74                     Unsafe.ARRAY_BYTE_BASE_OFFSET, len);
    74                     Unsafe.ARRAY_BYTE_BASE_OFFSET, len);
    75                 String s = new String(value);
    75                 String s = Util.toString(value);
    76                 if (s.startsWith(USER_NAMESPACE)) {
    76                 if (s.startsWith(USER_NAMESPACE)) {
    77                     s = s.substring(USER_NAMESPACE.length());
    77                     s = s.substring(USER_NAMESPACE.length());
    78                     list.add(s);
    78                     list.add(s);
    79                 }
    79                 }
    80                 start = pos + 1;
    80                 start = pos + 1;