shill: vpn: Destroy Unload()ed VPN services
BUG=chromium-os:28481
TEST=New unit test.
Change-Id: I222441d3ff5cbc7d97d97f7fdd2917eee5921721
Reviewed-on: https://gerrit.chromium.org/gerrit/19143
Reviewed-by: mukesh agrawal <quiche@chromium.org>
Commit-Ready: Paul Stewart <pstew@chromium.org>
Tested-by: Paul Stewart <pstew@chromium.org>
diff --git a/vpn_provider.cc b/vpn_provider.cc
index b9daf1a..13c4464 100644
--- a/vpn_provider.cc
+++ b/vpn_provider.cc
@@ -4,6 +4,8 @@
#include "shill/vpn_provider.h"
+#include <algorithm>
+
#include <base/logging.h>
#include <chromeos/dbus/service_constants.h>
@@ -84,4 +86,12 @@
return false;
}
+void VPNProvider::RemoveService(VPNServiceRefPtr service) {
+ vector<VPNServiceRefPtr>::iterator it;
+ it = std::find(services_.begin(), services_.end(), service);
+ if (it != services_.end()) {
+ services_.erase(it);
+ }
+}
+
} // namespace shill