| Index: chrome/browser/chromeos/arc/arc_session_manager.cc
|
| diff --git a/chrome/browser/chromeos/arc/arc_session_manager.cc b/chrome/browser/chromeos/arc/arc_session_manager.cc
|
| index 3544f007a7645d368c16cdb8ec58aa1cd3f15a64..4c0c75381a1401110bfacb5b9d449686e63733c3 100644
|
| --- a/chrome/browser/chromeos/arc/arc_session_manager.cc
|
| +++ b/chrome/browser/chromeos/arc/arc_session_manager.cc
|
| @@ -282,6 +282,17 @@ void ArcSessionManager::MaybeReenableArc() {
|
| void ArcSessionManager::OnProvisioningFinished(ProvisioningResult result) {
|
| DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
|
|
|
| + // If the Mojo message to notify finishing the provisioning is already sent
|
| + // from the container, it will be processed even after requesting to stop the
|
| + // container. Ignore all |result|s arriving while ARC is disabled, in order to
|
| + // avoid popping up an error message triggered below. This code intentionally
|
| + // does not support the case of reenabling.
|
| + if (!IsArcEnabled()) {
|
| + LOG(WARNING) << "Provisioning result received after Arc was disabled. "
|
| + << "Ignoring result " << static_cast<int>(result) << ".";
|
| + return;
|
| + }
|
| +
|
| // Due asynchronous nature of stopping the ARC instance,
|
| // OnProvisioningFinished may arrive after setting the |State::STOPPED| state
|
| // and |State::Active| is not guaranteed to be set here.
|
| @@ -293,8 +304,8 @@ void ArcSessionManager::OnProvisioningFinished(ProvisioningResult result) {
|
| DCHECK_NE(result, ProvisioningResult::SUCCESS);
|
| // TODO (khmel): Consider changing LOG to NOTREACHED once we guaranty that
|
| // no double message can happen in production.
|
| - LOG(WARNING) << " Provisioning result was already reported. Ignoring "
|
| - << " additional result " << static_cast<int>(result) << ".";
|
| + LOG(WARNING) << "Provisioning result was already reported. Ignoring "
|
| + << "additional result " << static_cast<int>(result) << ".";
|
| return;
|
| }
|
| provisioning_reported_ = true;
|
|
|