Index: chrome/browser/translate/translate_manager.cc |
diff --git a/chrome/browser/translate/translate_manager.cc b/chrome/browser/translate/translate_manager.cc |
index 6330e7b0d24ffefb9c1df5c8d9ec14c948f0b506..36122e258115d28e37170084b9517821b1603e18 100644 |
--- a/chrome/browser/translate/translate_manager.cc |
+++ b/chrome/browser/translate/translate_manager.cc |
@@ -608,10 +608,16 @@ std::string TranslateManager::GetTargetLanguage() { |
TranslateInfoBarDelegate* TranslateManager::GetTranslateInfoBarDelegate( |
TabContents* tab) { |
for (int i = 0; i < tab->infobar_delegate_count(); ++i) { |
- TranslateInfoBarDelegate* delegate = |
- tab->GetInfoBarDelegateAt(i)->AsTranslateInfoBarDelegate(); |
- if (delegate) |
- return delegate; |
+ InfoBarDelegate* delegate = tab->GetInfoBarDelegateAt(i); |
+ if (!delegate) { |
+ // Please let jcivelli know if you hit this and how you got to that point. |
+ NOTREACHED(); |
+ continue; |
+ } |
+ TranslateInfoBarDelegate* translate_delegate = |
+ delegate->AsTranslateInfoBarDelegate(); |
+ if (translate_delegate) |
+ return translate_delegate; |
} |
return NULL; |
} |