Ensure root folders get added in split archives
Make sure that we add the root folder itself to get the perms and
SELinux contexts before splitting to a second archive.
Change-Id: Id93a9f9b4767b61bba38eb0cf7306c81a8540a3c
diff --git a/twrpTar.cpp b/twrpTar.cpp
index 9c151b9..76c23c8 100644
--- a/twrpTar.cpp
+++ b/twrpTar.cpp
@@ -536,6 +536,12 @@
{
unsigned long long folder_size = TWFunc::Get_Folder_Size(FileName, false);
if (Archive_Current_Size + folder_size > MAX_ARCHIVE_SIZE) {
+ // Add the root folder first
+ LOGINFO("Adding root folder '%s' before splitting.\n", FileName.c_str());
+ if (addFile(FileName, true) != 0) {
+ LOGERR("Error adding folder '%s' to split archive.\n", FileName.c_str());
+ return -1;
+ }
LOGINFO("Calling Generate_Multiple_Archives\n");
if (Generate_Multiple_Archives(FileName) < 0)
return -1;
@@ -717,7 +723,7 @@
if (strcmp(de->d_name, ".") != 0) {
subfolder += de->d_name;
} else {
- LOGINFO("addFile '%s' including root: %i\n", buf, include_root);
+ LOGINFO("tarDirs addFile '%s' including root: %i\n", subfolder.c_str(), include_root);
if (addFile(subfolder, include_root) != 0)
return -1;
continue;