| Index: chrome/browser/sync/sync_global_error.cc
 | 
| diff --git a/chrome/browser/sync/sync_global_error.cc b/chrome/browser/sync/sync_global_error.cc
 | 
| index b4988eb0d23c31f4ddd49f6176725ebf291304a3..909529c2793636699d60bbef7047cfc6c2ad99ac 100644
 | 
| --- a/chrome/browser/sync/sync_global_error.cc
 | 
| +++ b/chrome/browser/sync/sync_global_error.cc
 | 
| @@ -4,8 +4,11 @@
 | 
|  
 | 
|  #include "chrome/browser/sync/sync_global_error.h"
 | 
|  
 | 
| +#include "base/utf_string_conversions.h"
 | 
|  #include "chrome/app/chrome_command_ids.h"
 | 
|  #include "chrome/browser/api/sync/profile_sync_service_observer.h"
 | 
| +#include "chrome/browser/signin/about_signin_internals.h"
 | 
| +#include "chrome/browser/signin/about_signin_internals_factory.h"
 | 
|  #include "chrome/browser/sync/profile_sync_service.h"
 | 
|  #include "chrome/browser/sync/sync_ui_util.h"
 | 
|  #include "chrome/browser/ui/browser.h"
 | 
| @@ -16,6 +19,7 @@
 | 
|  #include "chrome/browser/ui/webui/signin/login_ui_service.h"
 | 
|  #include "chrome/browser/ui/webui/signin/login_ui_service_factory.h"
 | 
|  #include "chrome/common/url_constants.h"
 | 
| +#include "google_apis/gaia/gaia_constants.h"
 | 
|  #include "google_apis/gaia/google_service_auth_error.h"
 | 
|  #include "grit/chromium_strings.h"
 | 
|  #include "grit/generated_resources.h"
 | 
| @@ -132,6 +136,11 @@ void SyncGlobalError::OnStateChanged() {
 | 
|      if (profile) {
 | 
|        GlobalErrorServiceFactory::GetForProfile(
 | 
|            profile)->NotifyErrorsChanged(this);
 | 
| +
 | 
| +      // Also push these errors to the about:signin-internals page.
 | 
| +      string16 consolidated_error_msg = menu_label_;
 | 
| +      consolidated_error_msg.append(bubble_message_.c_str());
 | 
| +      NotifyTokenFailureOccurred(consolidated_error_msg);
 | 
|      }
 | 
|    }
 | 
|  }
 | 
| @@ -139,3 +148,12 @@ void SyncGlobalError::OnStateChanged() {
 | 
|  bool SyncGlobalError::HasCustomizedSyncMenuItem() {
 | 
|    return !menu_label_.empty();
 | 
|  }
 | 
| +
 | 
| +// TODO(vishwath): Ensure that it's not incorrect to be overwriting
 | 
| +// regular token fetch status for the syncservice token.
 | 
| +void SyncGlobalError::NotifyTokenFailureOccurred(const string16& error_msg) {
 | 
| +  DCHECK(service_->profile());
 | 
| +  AboutSigninInternalsFactory::GetForProfile(service_->profile())->
 | 
| +      NotifyTokenReceivedFailure(GaiaConstants::kSyncService,
 | 
| +                                 UTF16ToUTF8(error_msg));
 | 
| +}
 | 
| 
 |