diff options
| author | Tim Kientzle <kientzle@FreeBSD.org> | 2004-06-17 03:09:06 +0000 |
|---|---|---|
| committer | Tim Kientzle <kientzle@FreeBSD.org> | 2004-06-17 03:09:06 +0000 |
| commit | 9ad66a1eed010e86f57f1178be6b5af22389e466 (patch) | |
| tree | 4e2d4e89de49d5e9e06912a4bc954fd4492a2d76 /lib/libarchive/archive_read_extract.c | |
| parent | 9896c5f11aee6e72e10b57e35c350b6bb91abeaa (diff) | |
Notes
Diffstat (limited to 'lib/libarchive/archive_read_extract.c')
| -rw-r--r-- | lib/libarchive/archive_read_extract.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/libarchive/archive_read_extract.c b/lib/libarchive/archive_read_extract.c index d313105ade80..8bb75a60fcb2 100644 --- a/lib/libarchive/archive_read_extract.c +++ b/lib/libarchive/archive_read_extract.c @@ -336,7 +336,9 @@ archive_read_extract_regular(struct archive *a, struct archive_entry *entry, } set_ownership(a, entry, flags); set_time(a, entry, flags); - set_perm(a, entry, archive_entry_mode(entry), flags); + /* Always restore permissions for regular files. */ + set_perm(a, entry, archive_entry_mode(entry), + flags | ARCHIVE_EXTRACT_PERM); set_extended_perm(a, entry, flags); close(fd); return (r); |
