summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authormidipix <writeonce@midipix.org>2024-05-28 23:17:20 +0000
committermidipix <writeonce@midipix.org>2024-05-28 23:26:12 +0000
commitdac847ec972cf1e288e15afa79946dc7e2e851be (patch)
treed2defbf7bda4c90fb269e4fb6bd6f5ff01785fb4 /src
parent5a35e13dc1ccc2ba97eb3a7d3b156866f1605492 (diff)
downloadtpax-dac847ec972cf1e288e15afa79946dc7e2e851be.tar.bz2
tpax-dac847ec972cf1e288e15afa79946dc7e2e851be.tar.xz
logic: tpax_archive_append() properly support the -d (no recursion) option.
Diffstat (limited to 'src')
-rw-r--r--src/logic/tpax_archive_append.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/logic/tpax_archive_append.c b/src/logic/tpax_archive_append.c
index 6ed414b..444ae7f 100644
--- a/src/logic/tpax_archive_append.c
+++ b/src/logic/tpax_archive_append.c
@@ -455,8 +455,9 @@ int tpax_archive_append(
for (; cdent; ) {
if (cdent->dirent.d_type == DT_DIR)
- if (tpax_archive_append_dir_entries(dctx,cdent) < 0)
- return TPAX_NESTED_ERROR(dctx);
+ if (dctx->cctx->drvflags & TPAX_DRIVER_DIR_MEMBER_RECURSE)
+ if (tpax_archive_append_dir_entries(dctx,cdent) < 0)
+ return TPAX_NESTED_ERROR(dctx);
addr = (uintptr_t)cdent;
addr += cdent->nsize;