| Index: remoting/protocol/jingle_session.cc
|
| diff --git a/remoting/protocol/jingle_session.cc b/remoting/protocol/jingle_session.cc
|
| index bfab845debed86b9f7b98c032acd653953f14679..a4c1ab4250d642e9996ed06580f95bb4333711fd 100644
|
| --- a/remoting/protocol/jingle_session.cc
|
| +++ b/remoting/protocol/jingle_session.cc
|
| @@ -550,6 +550,7 @@ bool JingleSession::InitializeConfigFromDescription(
|
| }
|
|
|
| void JingleSession::ProcessAuthenticationStep() {
|
| + DCHECK(CalledOnValidThread());
|
| DCHECK_EQ(state_, CONNECTED);
|
|
|
| if (authenticator_->state() == Authenticator::MESSAGE_READY) {
|
| @@ -565,6 +566,11 @@ void JingleSession::ProcessAuthenticationStep() {
|
| } else if (authenticator_->state() == Authenticator::REJECTED) {
|
| CloseInternal(AuthRejectionReasonToErrorCode(
|
| authenticator_->rejection_reason()));
|
| + } else if (authenticator_->state() == Authenticator::WAITING_EXTERNAL) {
|
| + authenticator_->PerformExternalAction(base::Bind(
|
| + &JingleSession::ProcessAuthenticationStep,
|
| + // Authenticator is owned by JingleSession, and cannot outlive it.
|
| + base::Unretained(this)));
|
| }
|
| }
|
|
|
|
|