summaryrefslogtreecommitdiff
path: root/artd/artd.cc
diff options
context:
space:
mode:
Diffstat (limited to 'artd/artd.cc')
-rw-r--r--artd/artd.cc18
1 files changed, 12 insertions, 6 deletions
diff --git a/artd/artd.cc b/artd/artd.cc
index 68574b2ce8..59f6b88d9f 100644
--- a/artd/artd.cc
+++ b/artd/artd.cc
@@ -1336,12 +1336,14 @@ ScopedAStatus Artd::createCancellationSignal(
return ScopedAStatus::ok();
}
-ScopedAStatus Artd::cleanup(const std::vector<ProfilePath>& in_profilesToKeep,
- const std::vector<ArtifactsPath>& in_artifactsToKeep,
- const std::vector<VdexPath>& in_vdexFilesToKeep,
- const std::vector<RuntimeArtifactsPath>& in_runtimeArtifactsToKeep,
- bool in_keepPreRebootStagedFiles,
- int64_t* _aidl_return) {
+ScopedAStatus Artd::cleanup(
+ const std::vector<ProfilePath>& in_profilesToKeep,
+ const std::vector<ArtifactsPath>& in_artifactsToKeep,
+ const std::vector<VdexPath>& in_vdexFilesToKeep,
+ const std::vector<SecureDexMetadataWithCompanionPaths>& in_SdmSdcFilesToKeep,
+ const std::vector<RuntimeArtifactsPath>& in_runtimeArtifactsToKeep,
+ bool in_keepPreRebootStagedFiles,
+ int64_t* _aidl_return) {
RETURN_FATAL_IF_PRE_REBOOT(options_);
std::unordered_set<std::string> files_to_keep;
for (const ProfilePath& profile : in_profilesToKeep) {
@@ -1359,6 +1361,10 @@ ScopedAStatus Artd::cleanup(const std::vector<ProfilePath>& in_profilesToKeep,
RETURN_FATAL_IF_ARG_IS_PRE_REBOOT(vdex, "vdexFilesToKeep");
files_to_keep.insert(OR_RETURN_FATAL(BuildVdexPath(vdex)));
}
+ for (const SecureDexMetadataWithCompanionPaths& sdm_sdc : in_SdmSdcFilesToKeep) {
+ files_to_keep.insert(OR_RETURN_FATAL(BuildSdmPath(sdm_sdc)));
+ files_to_keep.insert(OR_RETURN_FATAL(BuildSdcPath(sdm_sdc)));
+ }
std::string android_data = OR_RETURN_NON_FATAL(GetAndroidDataOrError());
std::string android_expand = OR_RETURN_NON_FATAL(GetAndroidExpandOrError());
for (const RuntimeArtifactsPath& runtime_image_path : in_runtimeArtifactsToKeep) {