diff options
Diffstat (limited to 'archival/tar.c')
-rw-r--r-- | archival/tar.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/archival/tar.c b/archival/tar.c index 176a7e22d..5a6ef60db 100644 --- a/archival/tar.c +++ b/archival/tar.c @@ -562,8 +562,9 @@ static int writeTarFile(const int tar_fd, const int verboseFlag, /* Read the directory/files and iterate over them one at a time */ while (include) { - if (!recursive_action(include->data, TRUE, dereferenceFlag, - FALSE, writeFileToTarball, writeFileToTarball, &tbInfo, 0)) + if (!recursive_action(include->data, (action_recurse | + dereferenceFlag ? action_followLinks : 0), + writeFileToTarball, writeFileToTarball, &tbInfo, 0)) { errorFlag = TRUE; } |