Index: mojo/service_manager/service_manager.cc |
diff --git a/mojo/service_manager/service_manager.cc b/mojo/service_manager/service_manager.cc |
index 92d336ca5b788694aa93a17f1d6f005b9580491b..0f13cfde6b375231d69db0fdd336a8d5a1f18788 100644 |
--- a/mojo/service_manager/service_manager.cc |
+++ b/mojo/service_manager/service_manager.cc |
@@ -94,11 +94,15 @@ ServiceManager::ServiceManager() : interceptor_(NULL) { |
} |
ServiceManager::~ServiceManager() { |
- STLDeleteValues(&url_to_shell_impl_); |
+ TerminateShellConnections(); |
STLDeleteValues(&url_to_loader_); |
STLDeleteValues(&scheme_to_loader_); |
} |
+void ServiceManager::TerminateShellConnections() { |
+ STLDeleteValues(&url_to_shell_impl_); |
+} |
+ |
// static |
ServiceManager* ServiceManager::GetInstance() { |
static base::LazyInstance<ServiceManager> instance = |
@@ -157,7 +161,6 @@ ServiceLoader* ServiceManager::GetLoaderForURL(const GURL& url) { |
scheme_to_loader_.find(url.scheme()); |
if (scheme_it != scheme_to_loader_.end()) |
return scheme_it->second; |
- DCHECK(default_loader_); |
return default_loader_.get(); |
} |