| Index: chrome/browser/sync/sync_ui_util.cc | 
| diff --git a/chrome/browser/sync/sync_ui_util.cc b/chrome/browser/sync/sync_ui_util.cc | 
| index cba3c7c3dd0ed46af57f317c64d5f8daca4aab5b..e2c1d0f8a043ae17675f0fada8350180500bca96 100644 | 
| --- a/chrome/browser/sync/sync_ui_util.cc | 
| +++ b/chrome/browser/sync/sync_ui_util.cc | 
| @@ -116,7 +116,10 @@ MessageType GetStatusInfo(ProfileSyncService* service, | 
| } | 
| result_type = PRE_SYNCED; | 
| } else if (service->observed_passphrase_required()) { | 
| -      if (service->passphrase_required_for_decryption()) { | 
| +      if (service->passphrase_required_reason() == | 
| +              sync_api::REASON_DECRYPTION || | 
| +          service->passphrase_required_reason() == | 
| +              sync_api::REASON_SET_PASSPHRASE_FAILED) { | 
| // NOT first machine. | 
| // Show a link ("needs attention"), but still indicate the | 
| // current synced status.  Return SYNC_PROMO so that | 
| @@ -188,7 +191,9 @@ MessageType GetStatusInfoForNewTabPage(ProfileSyncService* service, | 
|  | 
| if (service->HasSyncSetupCompleted() && | 
| service->observed_passphrase_required()) { | 
| -    if (!service->passphrase_required_for_decryption()) { | 
| +    if (service->passphrase_required_reason() != sync_api::REASON_DECRYPTION && | 
| +        service->passphrase_required_reason() != | 
| +            sync_api::REASON_SET_PASSPHRASE_FAILED) { | 
| // First machine migrating to passwords.  Show as a promotion. | 
| if (status_label && link_label) { | 
| status_label->assign( | 
|  |