From: Stephen Seo Date: Wed, 12 Feb 2025 10:05:46 +0000 (+0900) Subject: Force empty-dir perms only on "force-empty" flag X-Git-Tag: 1.15^2~4 X-Git-Url: https://git.seodisparate.com/stephenseo/js/darkmode.js?a=commitdiff_plain;h=bebb7c6cbf32e05ddd6684a8fc8a081f0dda8946;p=SimpleArchiver Force empty-dir perms only on "force-empty" flag Previous behavior used the `--force-dir-permissions ` flag to set the archive-creation-empty-dirs permissions. This commit changes this to check `--force-empty-dir-permissions ` instead. Only applicable to file format versions 2 and 3. --- diff --git a/src/archiver.c b/src/archiver.c index 84bb079..c6f972f 100644 --- a/src/archiver.c +++ b/src/archiver.c @@ -1937,8 +1937,8 @@ int internal_write_dir_entries_v2_v3(void *data, void *ud) { uint8_t u8 = 0; - if (state && state->parsed->flags & 0x2000) { - u8 = state->parsed->dir_permissions & 0xFF; + if (state && state->parsed->flags & 0x10000) { + u8 = state->parsed->empty_dir_permissions & 0xFF; } else { if ((stat_buf.st_mode & S_IRUSR) != 0) { u8 |= 1; @@ -1974,8 +1974,8 @@ int internal_write_dir_entries_v2_v3(void *data, void *ud) { } u8 = 0; - if (state && state->parsed->flags & 0x2000) { - u8 = (state->parsed->dir_permissions & 0x100) >> 8; + if (state && state->parsed->flags & 0x10000) { + u8 = (state->parsed->empty_dir_permissions & 0x100) >> 8; } else { if ((stat_buf.st_mode & S_IXOTH) != 0) { u8 |= 1;