diff options
author | Roy Luo <royluo@google.com> | 2024-04-01 23:42:09 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2024-04-01 23:42:09 +0000 |
commit | c429e8be8003b9db3cecce1db5dc6e3ecf3c65bc (patch) | |
tree | b9067c12ac97b26aa70c22f371b3850cb190ca5d | |
parent | e6db5c8d4a185eba70fbe718c7086a88075c1414 (diff) | |
parent | 21105d052e349b5f61bc0317b5d37de7d104a558 (diff) | |
download | apex-c429e8be8003b9db3cecce1db5dc6e3ecf3c65bc.tar.gz |
Merge "Support boot config to make adbd bootstrap" into main
-rw-r--r-- | apexd/apexd.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/apexd/apexd.cpp b/apexd/apexd.cpp index a09e3d55..d22cebc5 100644 --- a/apexd/apexd.cpp +++ b/apexd/apexd.cpp @@ -167,11 +167,21 @@ static const std::vector<std::string> kBootstrapApexes = ([]() { static constexpr const int kNumRetriesWhenCheckpointingEnabled = 1; bool IsBootstrapApex(const ApexFile& apex) { + static std::vector<std::string> additional = []() { + std::vector<std::string> ret; + if (android::base::GetBoolProperty("ro.boot.apex.early_adbd", false)) { + ret.push_back("com.android.adbd"); + } + return ret; + }(); + if (IsVendorApex(apex) && apex.GetManifest().vendorbootstrap()) { return true; } return std::find(kBootstrapApexes.begin(), kBootstrapApexes.end(), - apex.GetManifest().name()) != kBootstrapApexes.end(); + apex.GetManifest().name()) != kBootstrapApexes.end() || + std::find(additional.begin(), additional.end(), + apex.GetManifest().name()) != additional.end(); } void ReleaseF2fsCompressedBlocks(const std::string& file_path) { |