diff options
-rw-r--r-- | llvm/test/tools/llvm-objcopy/ELF/respect-umask.test | 7 | ||||
-rw-r--r-- | llvm/tools/llvm-objcopy/llvm-objcopy.cpp | 3 |
2 files changed, 5 insertions, 5 deletions
diff --git a/llvm/test/tools/llvm-objcopy/ELF/respect-umask.test b/llvm/test/tools/llvm-objcopy/ELF/respect-umask.test index b7652850f4b..e6f06b75060 100644 --- a/llvm/test/tools/llvm-objcopy/ELF/respect-umask.test +++ b/llvm/test/tools/llvm-objcopy/ELF/respect-umask.test @@ -19,20 +19,19 @@ # RUN: chmod 0777 %t # RUN: llvm-objcopy %t %t1 # RUN: ls -l %t1 | cut -f 1 -d ' ' > %t1.perms -## : cmp %t1.perms %t.0755 +# RUN: cmp %t1.perms %t.0755 # RUN: umask 0237 # RUN: chmod 0707 %t # RUN: llvm-objcopy %t %t1 # RUN: ls -l %t1 | cut -f 1 -d ' ' > %t1.perms -## : cmp %t1.perms %t.0500 +# RUN: cmp %t1.perms %t.0500 # RUN: umask 0222 # RUN: chmod 0777 %t # RUN: llvm-objcopy %t %t1 # RUN: ls -l %t1 | cut -f 1 -d ' ' > %t1.perms -## : cmp %t1.perms %t.0555 - +# RUN: cmp %t1.perms %t.0555 --- !ELF FileHeader: diff --git a/llvm/tools/llvm-objcopy/llvm-objcopy.cpp b/llvm/tools/llvm-objcopy/llvm-objcopy.cpp index db5609ea229..d04b1cf462f 100644 --- a/llvm/tools/llvm-objcopy/llvm-objcopy.cpp +++ b/llvm/tools/llvm-objcopy/llvm-objcopy.cpp @@ -215,7 +215,8 @@ static Error restoreStatOnFile(StringRef Filename, FD, Stat.getLastAccessedTime(), Stat.getLastModificationTime())) return createFileError(Filename, EC); - if (auto EC = sys::fs::setPermissions(Filename, Stat.permissions())) + if (auto EC = sys::fs::setPermissions(Filename, Stat.permissions(), + /*respectUmask=*/true)) return createFileError(Filename, EC); if (auto EC = sys::Process::SafelyCloseFileDescriptor(FD)) |