Index: ui/events/devices/device_data_manager.cc |
diff --git a/ui/events/devices/device_data_manager.cc b/ui/events/devices/device_data_manager.cc |
index 628813a8905dfdddec07dd946af5c796cf85cfaf..ff59f5bbd2a3b03e08ad2179de15c4ee846937b4 100644 |
--- a/ui/events/devices/device_data_manager.cc |
+++ b/ui/events/devices/device_data_manager.cc |
@@ -28,8 +28,10 @@ DeviceDataManager::DeviceDataManager() { |
CHECK(!instance_) << "Can not create multiple instances of DeviceDataManager"; |
instance_ = this; |
+ scoped_ptr<DeviceDataManager> owned_instance(instance_); |
base::AtExitManager::RegisterTask( |
- base::Bind(&base::DeletePointer<DeviceDataManager>, this)); |
+ base::Bind(&base::DeletePointer<DeviceDataManager>, |
+ base::Passed(&owned_instance))); |
ClearTouchDeviceAssociations(); |
} |