Chromium Code Reviews| Index: chromeos/dbus/bluetooth_le_advertisement_service_provider.cc |
| diff --git a/chromeos/dbus/bluetooth_le_advertisement_service_provider.cc b/chromeos/dbus/bluetooth_le_advertisement_service_provider.cc |
| index aa3f23451abeda172c40e26afb39f25b6d8329fa..81cc0b8996150bbf3ffdbb5eade025589edae27a 100644 |
| --- a/chromeos/dbus/bluetooth_le_advertisement_service_provider.cc |
| +++ b/chromeos/dbus/bluetooth_le_advertisement_service_provider.cc |
| @@ -37,7 +37,6 @@ class BluetoothAdvertisementServiceProviderImpl |
| : origin_thread_id_(base::PlatformThread::CurrentId()), |
| bus_(bus), |
| delegate_(delegate), |
| - object_path_(object_path), |
| type_(type), |
| service_uuids_(service_uuids.Pass()), |
| manufacturer_data_(manufacturer_data.Pass()), |
| @@ -49,6 +48,7 @@ class BluetoothAdvertisementServiceProviderImpl |
| VLOG(1) << "Creating Bluetooth Advertisement: " << object_path_.value(); |
| + object_path_ = object_path; |
| exported_object_ = bus_->GetExportedObject(object_path_); |
| // Export Bluetooth Advertisement interface methods. |
| @@ -358,10 +358,6 @@ class BluetoothAdvertisementServiceProviderImpl |
| // owns this one, and must outlive it. |
| Delegate* delegate_; |
| - // D-Bus object path of object we are exporting, kept so we can unregister |
| - // again in our destructor. |
| - dbus::ObjectPath object_path_; |
| - |
| // Advertisement data that needs to be provided to BlueZ when requested. |
| AdvertisementType type_; |
| scoped_ptr<UUIDList> service_uuids_; |
| @@ -391,7 +387,7 @@ BluetoothLEAdvertisementServiceProvider:: |
| } |
| // static |
| -BluetoothLEAdvertisementServiceProvider* |
| +scoped_ptr<BluetoothLEAdvertisementServiceProvider> |
| BluetoothLEAdvertisementServiceProvider::Create( |
| dbus::Bus* bus, |
| const dbus::ObjectPath& object_path, |
| @@ -402,12 +398,14 @@ BluetoothLEAdvertisementServiceProvider::Create( |
| scoped_ptr<UUIDList> solicit_uuids, |
| scoped_ptr<ServiceData> service_data) { |
| if (!DBusThreadManager::Get()->IsUsingStub(DBusClientBundle::BLUETOOTH)) { |
| - return new BluetoothAdvertisementServiceProviderImpl( |
| - bus, object_path, delegate, type, service_uuids.Pass(), |
| - manufacturer_data.Pass(), solicit_uuids.Pass(), service_data.Pass()); |
| + return make_scoped_ptr(new BluetoothAdvertisementServiceProviderImpl( |
| + bus, object_path, delegate, type, |
| + service_uuids.Pass(), manufacturer_data.Pass(), |
| + solicit_uuids.Pass(), service_data.Pass())) |
| + .Pass(); |
| } else { |
| - return new FakeBluetoothLEAdvertisementServiceProvider(object_path, |
| - delegate); |
| + return make_scoped_ptr( |
| + new FakeBluetoothLEAdvertisementServiceProvider(object_path, delegate)); |
|
armansito
2015/04/24 22:11:00
Why do you call Pass() above and not here?
rkc
2015/04/24 22:55:24
Don't need to in either place.
Done.
|
| } |
| } |