| Index: chrome/browser/chromeos/tether/tether_service.cc
|
| diff --git a/chrome/browser/chromeos/tether/tether_service.cc b/chrome/browser/chromeos/tether/tether_service.cc
|
| index f7f9c8d974f453ac824aa4f55d42ca4894e50284..67a26ad9384a75ce9c75467456dd2f0315ee20a0 100644
|
| --- a/chrome/browser/chromeos/tether/tether_service.cc
|
| +++ b/chrome/browser/chromeos/tether/tether_service.cc
|
| @@ -135,6 +135,8 @@ void TetherService::Shutdown() {
|
|
|
| shut_down_ = true;
|
|
|
| + // Remove all observers. This ensures that once Shutdown() is called, no more
|
| + // calls to UpdateTetherTechnologyState() will be triggered.
|
| power_manager_client_->RemoveObserver(this);
|
| session_manager_client_->RemoveObserver(this);
|
| cryptauth_service_->GetCryptAuthDeviceManager()->RemoveObserver(this);
|
| @@ -143,7 +145,10 @@ void TetherService::Shutdown() {
|
| adapter_->RemoveObserver(this);
|
| registrar_.RemoveAll();
|
|
|
| - UpdateTetherTechnologyState();
|
| + // Shut down the feature. Note that this does not change Tether's technology
|
| + // state in NetworkStateHandler because doing so could cause visual jank just
|
| + // as the user logs out.
|
| + StopTether();
|
| }
|
|
|
| void TetherService::SuspendImminent() {
|
|
|