Index: chromeos/dbus/services/display_power_service_provider.cc |
diff --git a/chromeos/dbus/services/display_power_service_provider.cc b/chromeos/dbus/services/display_power_service_provider.cc |
index 9f44d0e7cb9db103cf25bf7da0432f78f8fcf026..03084b90a454f968d2b066acf757a63b09775c84 100644 |
--- a/chromeos/dbus/services/display_power_service_provider.cc |
+++ b/chromeos/dbus/services/display_power_service_provider.cc |
@@ -10,6 +10,17 @@ |
namespace chromeos { |
+namespace { |
+ |
+void DisplayConfigurationCallback( |
Daniel Erat
2015/01/30 17:14:07
nit: put a verb in this (RunConfigurationCallback(
dnicoara
2015/01/30 18:25:28
Done.
|
+ dbus::MethodCall* method_call, |
+ dbus::ExportedObject::ResponseSender response_sender, |
+ bool status) { |
+ response_sender.Run(dbus::Response::FromMethodCall(method_call)); |
+} |
+ |
+} // namespace |
+ |
DisplayPowerServiceProvider::DisplayPowerServiceProvider( |
scoped_ptr<Delegate> delegate) |
: delegate_(delegate.Pass()), |
@@ -50,14 +61,15 @@ void DisplayPowerServiceProvider::SetDisplayPower( |
dbus::ExportedObject::ResponseSender response_sender) { |
dbus::MessageReader reader(method_call); |
int int_state = 0; |
+ Delegate::ResponseCallback callback = |
+ base::Bind(&DisplayConfigurationCallback, method_call, response_sender); |
if (reader.PopInt32(&int_state)) { |
DisplayPowerState state = static_cast<DisplayPowerState>(int_state); |
- delegate_->SetDisplayPower(state); |
+ delegate_->SetDisplayPower(state, callback); |
} else { |
LOG(ERROR) << "Unable to parse " << kSetDisplayPower << " request"; |
+ callback.Run(false); |
} |
- |
- response_sender.Run(dbus::Response::FromMethodCall(method_call)); |
} |
void DisplayPowerServiceProvider::SetDisplaySoftwareDimming( |