| Index: chromeos/dbus/session_manager_client.cc
|
| diff --git a/chromeos/dbus/session_manager_client.cc b/chromeos/dbus/session_manager_client.cc
|
| index 8b99b6965126ec0a0101e8f5a25e786668c510d3..7d64e53f358cc2ca92d4d49c0d6fe5f9dad69e80 100644
|
| --- a/chromeos/dbus/session_manager_client.cc
|
| +++ b/chromeos/dbus/session_manager_client.cc
|
| @@ -83,6 +83,10 @@ void CreateValidCredConduit(dbus::FileDescriptor* local_auth_fd,
|
| remote_auth_fd->CheckValidity();
|
| }
|
|
|
| +void HandleDBusError(dbus::ErrorResponse* response) {
|
| + LOG(ERROR) << "DBus error " << response->ToString();
|
| +}
|
| +
|
| } // namespace
|
|
|
| // The SessionManagerClient implementation used in production.
|
| @@ -498,6 +502,7 @@ class SessionManagerClientImpl : public SessionManagerClient {
|
| void CallRestartJobWithValidFd(dbus::ScopedFileDescriptor local_auth_fd,
|
| dbus::ScopedFileDescriptor remote_auth_fd,
|
| const std::vector<std::string>& argv) {
|
| + VLOG(1) << "CallRestartJobWithValidFd";
|
| dbus::MethodCall method_call(login_manager::kSessionManagerInterface,
|
| login_manager::kSessionManagerRestartJob);
|
| dbus::MessageWriter writer(&method_call);
|
| @@ -507,11 +512,12 @@ class SessionManagerClientImpl : public SessionManagerClient {
|
| // Ownership of local_auth_fd is passed to the callback that is to be
|
| // called on completion of this method call. This keeps the browser end
|
| // of the socket-pair alive for the duration of the RPC.
|
| - session_manager_proxy_->CallMethod(
|
| + session_manager_proxy_->CallMethodWithErrorCallback(
|
| &method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT,
|
| base::Bind(&SessionManagerClientImpl::OnRestartJob,
|
| weak_ptr_factory_.GetWeakPtr(),
|
| - base::Passed(&local_auth_fd)));
|
| + base::Passed(&local_auth_fd)),
|
| + base::Bind(HandleDBusError));
|
| }
|
|
|
| // Called when kSessionManagerRestartJob method is complete.
|
| @@ -519,6 +525,7 @@ class SessionManagerClientImpl : public SessionManagerClient {
|
| // which will happen automatically when it goes out of scope.
|
| void OnRestartJob(dbus::ScopedFileDescriptor local_auth_fd,
|
| dbus::Response* response) {
|
| + VLOG(1) << "OnRestartJob";
|
| LOG_IF(ERROR, !response)
|
| << "Failed to call "
|
| << login_manager::kSessionManagerRestartJob;
|
|
|