| 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;
|
|
|