< prev index next >
src/java.base/share/classes/java/util/zip/ZipFile.java
Print this page
*** 656,667 ****
e.crc = CENCRC(cen, pos);
e.size = CENLEN(cen, pos);
e.csize = CENSIZ(cen, pos);
e.method = CENHOW(cen, pos);
if (CENVEM_FA(cen, pos) == FILE_ATTRIBUTES_UNIX) {
! // 12 bits for setuid, setgid, sticky + perms
! e.posixPerms = CENATX_PERMS(cen, pos) & 0xFFF;
}
if (elen != 0) {
int start = pos + CENHDR + nlen;
e.setExtra0(Arrays.copyOfRange(cen, start, start + elen), true, false);
--- 656,666 ----
e.crc = CENCRC(cen, pos);
e.size = CENLEN(cen, pos);
e.csize = CENSIZ(cen, pos);
e.method = CENHOW(cen, pos);
if (CENVEM_FA(cen, pos) == FILE_ATTRIBUTES_UNIX) {
! e.extraAttributes = CENATX_PERMS(cen, pos) & 0xFFFF;
}
if (elen != 0) {
int start = pos + CENHDR + nlen;
e.setExtra0(Arrays.copyOfRange(cen, start, start + elen), true, false);
*** 1094,1111 ****
}
@Override
public Stream<String> entryNameStream(ZipFile zip) {
return zip.entryNameStream();
}
- // only set posix perms value via ZipEntry contructor for now
@Override
! public int getPosixPerms(ZipEntry ze) {
! return ze.posixPerms;
}
@Override
! public void setPosixPerms(ZipEntry ze, int perms) {
! ze.posixPerms = perms;
}
}
);
isWindows = VM.getSavedProperty("os.name").contains("Windows");
--- 1093,1109 ----
}
@Override
public Stream<String> entryNameStream(ZipFile zip) {
return zip.entryNameStream();
}
@Override
! public int getExtraAttributes(ZipEntry ze) {
! return ze.extraAttributes;
}
@Override
! public void setExtraAttributes(ZipEntry ze, int extraAttrs) {
! ze.extraAttributes = extraAttrs;
}
}
);
isWindows = VM.getSavedProperty("os.name").contains("Windows");
< prev index next >