| Index: ipc/attachment_broker_privileged_mac.cc | 
| diff --git a/ipc/attachment_broker_privileged_mac.cc b/ipc/attachment_broker_privileged_mac.cc | 
| index 6b53ce0f2be276dcdac1012921078f7c8a3fc43b..fdf4715b348e00695af90e121426210156851568 100644 | 
| --- a/ipc/attachment_broker_privileged_mac.cc | 
| +++ b/ipc/attachment_broker_privileged_mac.cc | 
| @@ -174,8 +174,9 @@ bool AttachmentBrokerPrivilegedMac::RouteWireFormatToAnother( | 
| // Another process is the destination. | 
| base::ProcessId dest = wire_format.destination_process; | 
| base::AutoLock auto_lock(*get_lock()); | 
| -  Sender* sender = GetSenderWithProcessId(dest); | 
| -  if (!sender) { | 
| +  AttachmentBrokerPrivileged::EndpointRunnerPair pair = | 
| +      GetSenderWithProcessId(dest); | 
| +  if (!pair.first) { | 
| // Assuming that this message was not sent from a malicious process, the | 
| // channel endpoint that would have received this message will block | 
| // forever. | 
| @@ -186,7 +187,8 @@ bool AttachmentBrokerPrivilegedMac::RouteWireFormatToAnother( | 
| } | 
|  | 
| LogError(DESTINATION_FOUND); | 
| -  sender->Send(new AttachmentBrokerMsg_MachPortHasBeenDuplicated(wire_format)); | 
| +  SendMessageToEndpoint( | 
| +      pair, new AttachmentBrokerMsg_MachPortHasBeenDuplicated(wire_format)); | 
| return true; | 
| } | 
|  | 
| @@ -229,7 +231,9 @@ void AttachmentBrokerPrivilegedMac::SendPrecursorsForProcess( | 
|  | 
| if (!to_self) { | 
| base::AutoLock auto_lock(*get_lock()); | 
| -    if (!GetSenderWithProcessId(pid)) { | 
| +    AttachmentBrokerPrivileged::EndpointRunnerPair pair = | 
| +        GetSenderWithProcessId(pid); | 
| +    if (!pair.first) { | 
| // If there is no sender, then the destination process is no longer | 
| // running, or never existed to begin with. | 
| LogError(DESTINATION_NOT_FOUND); | 
| @@ -319,7 +323,9 @@ void AttachmentBrokerPrivilegedMac::ProcessExtractorsForProcess( | 
|  | 
| { | 
| base::AutoLock auto_lock(*get_lock()); | 
| -    if (!GetSenderWithProcessId(pid)) { | 
| +    AttachmentBrokerPrivileged::EndpointRunnerPair pair = | 
| +        GetSenderWithProcessId(pid); | 
| +    if (!pair.first) { | 
| // If there is no sender, then the source process is no longer running. | 
| LogError(ERROR_SOURCE_NOT_FOUND); | 
| delete it->second; | 
|  |