Skip to content

Commit 0ea029a

Browse files
committed
fix permission issues
1 parent f376368 commit 0ea029a

File tree

1 file changed

+13
-4
lines changed

1 file changed

+13
-4
lines changed

scripts/copyExes.js

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,19 @@ function copyExe(dir, exe) {
2424
fs.rmSync(dest);
2525
}
2626

27-
fs.copyFileSync(src, dest);
28-
29-
if (process.platform !== "win32") {
30-
child_process.execSync(`strip ${dest}`);
27+
let mode = 0o755;
28+
if (fs.existsSync(dest)) {
29+
mode = fs.statSync(dest).mode & 0o777;
30+
fs.chmodSync(dest, mode | 0o200); // u+w
31+
}
32+
try {
33+
fs.copyFileSync(src, dest);
34+
if (process.platform !== "win32") {
35+
fs.chmodSync(dest, mode | 0o200); // u+w
36+
child_process.execSync(`strip ${dest}`);
37+
}
38+
} finally {
39+
fs.chmodSync(dest, mode);
3140
}
3241
}
3342

0 commit comments

Comments
 (0)