Use pruneMapLocked for setMinSchedulerPolicy.

Bug: 129726097
Test: hidl's run_all_device_tests.sh
Change-Id: I987f952589f634891c6c6e51583c89f900d17cb3
Merged-In: I771fa6bbeac0b9cbba5321881e191605b0e17e23
diff --git a/transport/HidlTransportSupport.cpp b/transport/HidlTransportSupport.cpp
index 311504d..16f47c6 100644
--- a/transport/HidlTransportSupport.cpp
+++ b/transport/HidlTransportSupport.cpp
@@ -88,19 +88,8 @@
     // Due to ABI considerations, IBase cannot have a destructor to clean this up.
     // So, because this API is so infrequently used, (expected to be usually only
     // one time for a process, but it can be more), we are cleaning it up here.
-    // TODO(b/37794345): if ever we update the HIDL ABI for launches in an Android
-    // release in the meta-version sense, we should remove this.
     std::unique_lock<std::mutex> lock = details::gServicePrioMap.lock();
-
-    std::vector<wp<IBase>> toDelete;
-    for (const auto& kv : details::gServicePrioMap) {
-        if (kv.first.promote() == nullptr) {
-            toDelete.push_back(kv.first);
-        }
-    }
-    for (const auto& k : toDelete) {
-        details::gServicePrioMap.eraseLocked(k);
-    }
+    pruneMapLocked(details::gServicePrioMap);
     details::gServicePrioMap.setLocked(service, {policy, priority});
 
     return true;