From ed40077534c2a8082ed21187fd621c1c3f316adf Mon Sep 17 00:00:00 2001 From: Dees Troy Date: Wed, 9 Oct 2013 14:45:24 +0000 Subject: 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 --- twrpTar.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/twrpTar.cpp b/twrpTar.cpp index 9c151b939..76c23c868 100644 --- a/twrpTar.cpp +++ b/twrpTar.cpp @@ -536,6 +536,12 @@ int twrpTar::Generate_Multiple_Archives(string Path) { { 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 @@ int twrpTar::tarDirs(bool include_root) { 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; -- cgit v1.2.3