diff options
Diffstat (limited to 'src/core/function/ArchiveFileOperator.cpp')
-rw-r--r-- | src/core/function/ArchiveFileOperator.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/core/function/ArchiveFileOperator.cpp b/src/core/function/ArchiveFileOperator.cpp index b252f3a0..d186fee2 100644 --- a/src/core/function/ArchiveFileOperator.cpp +++ b/src/core/function/ArchiveFileOperator.cpp @@ -220,6 +220,11 @@ void ArchiveFileOperator::ExtractArchiveFromDataExchanger( break; } + archive_entry_set_pathname( + entry, (target_path / + std::filesystem::path(archive_entry_pathname(entry))) + .c_str()); + r = archive_write_header(ext, entry); if (r != ARCHIVE_OK) { SPDLOG_ERROR("archive_write_header(), ret: {}, reason: {}", r, |