Chromium Code Reviews| Index: chrome/browser/local_discovery/service_discovery_device_lister.cc |
| diff --git a/chrome/browser/local_discovery/service_discovery_device_lister.cc b/chrome/browser/local_discovery/service_discovery_device_lister.cc |
| index 2126d7780a19b89f6d5b26a8abe3d6afc60953bb..d3fee1a271c879e75a3b97e2b0e7f4ec6bc70874 100644 |
| --- a/chrome/browser/local_discovery/service_discovery_device_lister.cc |
| +++ b/chrome/browser/local_discovery/service_discovery_device_lister.cc |
| @@ -56,28 +56,29 @@ void ServiceDiscoveryDeviceLister::OnServiceUpdated( |
| return; |
| } |
| - if (update != ServiceWatcher::UPDATE_REMOVED) { |
| - bool added = (update == ServiceWatcher::UPDATE_ADDED); |
| - std::pair<ServiceResolverMap::iterator, bool> insert_result = |
| - resolvers_.insert(make_pair(service_name, |
| - linked_ptr<ServiceResolver>(NULL))); |
| - |
| - // If there is already a resolver working on this service, don't add one. |
| - if (insert_result.second) { |
| - VLOG(1) << "Adding resolver for service_name: " << service_name; |
| - std::unique_ptr<ServiceResolver> resolver = |
| - service_discovery_client_->CreateServiceResolver( |
| - service_name, |
| - base::Bind(&ServiceDiscoveryDeviceLister::OnResolveComplete, |
| - weak_factory_.GetWeakPtr(), added, service_name)); |
| - |
| - insert_result.first->second.reset(resolver.release()); |
| - insert_result.first->second->StartResolving(); |
| - } else { |
| - VLOG(1) << "Resolver already exists, service_name: " << service_name; |
| - } |
| - } else { |
| + if (update == ServiceWatcher::UPDATE_REMOVED) { |
| delegate_->OnDeviceRemoved(service_name); |
| + return; |
| + } |
| + |
| + bool added = (update == ServiceWatcher::UPDATE_ADDED); |
| + std::pair<ServiceResolverMap::iterator, bool> insert_result = |
| + resolvers_.insert(make_pair(service_name, |
| + linked_ptr<ServiceResolver>(NULL))); |
|
Vitaly Buka (NO REVIEWS)
2016/04/16 01:33:52
scoped_ptrs didn't work well with std containers
m
Lei Zhang
2016/04/16 01:53:19
Done.
|
| + |
| + // If there is already a resolver working on this service, don't add one. |
| + if (insert_result.second) { |
| + VLOG(1) << "Adding resolver for service_name: " << service_name; |
| + std::unique_ptr<ServiceResolver> resolver = |
| + service_discovery_client_->CreateServiceResolver( |
| + service_name, |
| + base::Bind(&ServiceDiscoveryDeviceLister::OnResolveComplete, |
| + weak_factory_.GetWeakPtr(), added, service_name)); |
| + |
| + insert_result.first->second.reset(resolver.release()); |
| + insert_result.first->second->StartResolving(); |
| + } else { |
| + VLOG(1) << "Resolver already exists, service_name: " << service_name; |
| } |
| } |