diff --git a/modules/perc-distribution-tree/src/main/java/com/percussion/preinstall/Main.java b/modules/perc-distribution-tree/src/main/java/com/percussion/preinstall/Main.java index 197edbd6ec..3e023d76cc 100644 --- a/modules/perc-distribution-tree/src/main/java/com/percussion/preinstall/Main.java +++ b/modules/perc-distribution-tree/src/main/java/com/percussion/preinstall/Main.java @@ -266,19 +266,21 @@ public static void extractArchive(Path archiveFile, Path destPath, String folder new File(newFile.getParent()).mkdirs(); if (entry.isDirectory()) { - // codeql[java/zipslip] justification: ZipSlipGuard + canonical startsWith; re-review by 2027-07-31 + // codeql[java/zipslip] justification: ZipSlipGuard + canonical startsWith; re-review by + // 2027-07-31 Files.createDirectory(newFile.toPath()); continue; } System.out.println("Creating file " + newFile); - // codeql[java/zipslip] justification: ZipSlipGuard + canonical startsWith; re-review by 2027-07-31 + // codeql[java/zipslip] justification: ZipSlipGuard + canonical startsWith; re-review by + // 2027-07-31 Files.copy(archive.getInputStream(entry), newFile.toPath()); // Preserve executable permissions for shell scripts if (entryName.endsWith(".sh")) { - File file = entryDest.toFile(); + File file = newFile; file.setExecutable(true, false); // Set executable for owner, group, and others } }