diff options
author | 2024-01-31 01:09:31 +0000 | |
---|---|---|
committer | 2024-01-31 01:09:31 +0000 | |
commit | 3f31ab45036e72f3d1d1620406e8305bd88fee9c (patch) | |
tree | 1167826d22b04e34c787d58fc1f340d1ce76e6f9 | |
parent | b5d245390fc6aa4119e7ce3a2f398254369838e6 (diff) | |
parent | 6c9562662ee629ee6885f5c6cff1a34f8fc50b01 (diff) |
Merge "servicemanager: Fix loop continue/break" into main am: 6c9562662e
Original change: https://android-review.googlesource.com/c/platform/frameworks/native/+/2928570
Change-Id: Ie395672cb570c84f493da6959c9990fabeed17f5
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r-- | cmds/servicemanager/ServiceManager.cpp | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/cmds/servicemanager/ServiceManager.cpp b/cmds/servicemanager/ServiceManager.cpp index a4018385c7..adcef911fb 100644 --- a/cmds/servicemanager/ServiceManager.cpp +++ b/cmds/servicemanager/ServiceManager.cpp @@ -150,7 +150,7 @@ static std::optional<std::string> getVintfUpdatableApex(const std::string& name) std::optional<std::string> updatableViaApex; forEachManifest([&](const ManifestWithDescription& mwd) { - mwd.manifest->forEachInstance([&](const auto& manifestInstance) { + bool cont = mwd.manifest->forEachInstance([&](const auto& manifestInstance) { if (manifestInstance.format() != vintf::HalFormat::AIDL) return true; if (manifestInstance.package() != aname.package) return true; if (manifestInstance.interface() != aname.iface) return true; @@ -158,8 +158,7 @@ static std::optional<std::string> getVintfUpdatableApex(const std::string& name) updatableViaApex = manifestInstance.updatableViaApex(); return false; // break (libvintf uses opposite convention) }); - if (updatableViaApex.has_value()) return true; // break (found match) - return false; // continue + return !cont; }); return updatableViaApex; |