| Index: chrome/browser/extensions/api/signed_in_devices/signed_in_devices_manager.cc | 
| diff --git a/chrome/browser/extensions/api/signed_in_devices/signed_in_devices_manager.cc b/chrome/browser/extensions/api/signed_in_devices/signed_in_devices_manager.cc | 
| index b21ff2174d71f268d984173c8e8d3aa866d43dd5..8bea7cd257a8e7573fb7a7e7a96be3f3a8382644 100644 | 
| --- a/chrome/browser/extensions/api/signed_in_devices/signed_in_devices_manager.cc | 
| +++ b/chrome/browser/extensions/api/signed_in_devices/signed_in_devices_manager.cc | 
| @@ -10,7 +10,7 @@ | 
| #include <vector> | 
|  | 
| #include "base/lazy_instance.h" | 
| -#include "base/memory/scoped_vector.h" | 
| +#include "base/memory/ptr_util.h" | 
| #include "base/values.h" | 
| #include "chrome/browser/extensions/api/signed_in_devices/signed_in_devices_api.h" | 
| #include "chrome/browser/extensions/extension_service.h" | 
| @@ -61,11 +61,11 @@ SignedInDevicesChangeObserver::~SignedInDevicesChangeObserver() { | 
| void SignedInDevicesChangeObserver::OnDeviceInfoChange() { | 
| // There is a change in the list of devices. Get all devices and send them to | 
| // the listener. | 
| -  ScopedVector<DeviceInfo> devices = GetAllSignedInDevices(extension_id_, | 
| -                                                           profile_); | 
| +  std::vector<std::unique_ptr<DeviceInfo>> devices = | 
| +      GetAllSignedInDevices(extension_id_, profile_); | 
|  | 
| std::vector<api::signed_in_devices::DeviceInfo> args; | 
| -  for (const DeviceInfo* info : devices) { | 
| +  for (const std::unique_ptr<DeviceInfo>& info : devices) { | 
| api::signed_in_devices::DeviceInfo api_device; | 
| FillDeviceInfo(*info, &api_device); | 
| args.push_back(std::move(api_device)); | 
| @@ -122,19 +122,16 @@ SignedInDevicesManager::~SignedInDevicesManager() { | 
|  | 
| void SignedInDevicesManager::OnListenerAdded( | 
| const EventListenerInfo& details) { | 
| -  for (ScopedVector<SignedInDevicesChangeObserver>::const_iterator it = | 
| -           change_observers_.begin(); | 
| -           it != change_observers_.end(); | 
| -           ++it) { | 
| -    if ((*it)->extension_id() == details.extension_id) { | 
| +  for (const std::unique_ptr<SignedInDevicesChangeObserver>& observer : | 
| +       change_observers_) { | 
| +    if (observer->extension_id() == details.extension_id) { | 
| DCHECK(false) <<"OnListenerAded fired twice for same extension"; | 
| return; | 
| } | 
| } | 
|  | 
| -  change_observers_.push_back(new SignedInDevicesChangeObserver( | 
| -      details.extension_id, | 
| -      profile_)); | 
| +  change_observers_.push_back(base::MakeUnique<SignedInDevicesChangeObserver>( | 
| +      details.extension_id, profile_)); | 
| } | 
|  | 
| void SignedInDevicesManager::OnListenerRemoved( | 
| @@ -144,10 +141,9 @@ void SignedInDevicesManager::OnListenerRemoved( | 
|  | 
| void SignedInDevicesManager::RemoveChangeObserverForExtension( | 
| const std::string& extension_id) { | 
| -  for (ScopedVector<SignedInDevicesChangeObserver>::iterator it = | 
| -           change_observers_.begin(); | 
| -           it != change_observers_.end(); | 
| -           ++it) { | 
| +  for (std::vector<std::unique_ptr<SignedInDevicesChangeObserver>>::iterator | 
| +           it = change_observers_.begin(); | 
| +       it != change_observers_.end(); ++it) { | 
| if ((*it)->extension_id() == extension_id) { | 
| change_observers_.erase(it); | 
| return; | 
|  |