| Index: chrome/browser/ui/browser.cc
|
| ===================================================================
|
| --- chrome/browser/ui/browser.cc (revision 71863)
|
| +++ chrome/browser/ui/browser.cc (working copy)
|
| @@ -3284,19 +3284,16 @@
|
| // this extension, it means that it has been reloaded in another window
|
| // so just remove the remaining CrashedExtensionInfoBarDelegate objects.
|
| const Extension* extension = Details<const Extension>(details).ptr();
|
| - CrashedExtensionInfoBarDelegate* delegate = NULL;
|
| TabStripModel* model = tab_handler_->GetTabStripModel();
|
| for (int m = 0; m < model->count(); ++m) {
|
| TabContents* tab_contents = model->GetTabContentsAt(m)->tab_contents();
|
| - for (int i = 0; i < tab_contents->infobar_delegate_count();) {
|
| - delegate = tab_contents->GetInfoBarDelegateAt(i)->
|
| - AsCrashedExtensionInfoBarDelegate();
|
| - if (delegate && delegate->extension_id() == extension->id()) {
|
| + for (int i = 0; i < tab_contents->infobar_delegate_count(); ) {
|
| + CrashedExtensionInfoBarDelegate* delegate = tab_contents->
|
| + GetInfoBarDelegateAt(i)->AsCrashedExtensionInfoBarDelegate();
|
| + if (delegate && delegate->extension_id() == extension->id())
|
| tab_contents->RemoveInfoBar(delegate);
|
| - continue;
|
| - }
|
| - // Only increment |i| if we didn't remove an entry.
|
| - ++i;
|
| + else
|
| + ++i;
|
| }
|
| }
|
| break;
|
|
|