| Index: chrome/browser/ui/views/infobars/after_translate_infobar.cc
|
| ===================================================================
|
| --- chrome/browser/ui/views/infobars/after_translate_infobar.cc (revision 65711)
|
| +++ chrome/browser/ui/views/infobars/after_translate_infobar.cc (working copy)
|
| @@ -117,15 +117,21 @@
|
|
|
| void AfterTranslateInfoBar::ButtonPressed(views::Button* sender,
|
| const views::Event& event) {
|
| - if (sender == revert_button_) {
|
| + if (delegate() && (sender == revert_button_)) {
|
| GetDelegate()->RevertTranslation();
|
| return;
|
| }
|
| +
|
| TranslateInfoBarBase::ButtonPressed(sender, event);
|
| }
|
|
|
| void AfterTranslateInfoBar::RunMenu(views::View* source,
|
| const gfx::Point& pt) {
|
| + if (!delegate())
|
| + return;
|
| + // TODO(pkasting): What if the InfoBarDelegate is closed while the menu is
|
| + // open? Then the menu models may deref garbage delegate pointers.
|
| +
|
| if (source == original_language_menu_button_) {
|
| if (!original_language_menu_.get()) {
|
| original_language_menu_.reset(
|
|
|