Index: chrome/browser/ui/app_modal_dialogs/message_box_handler.cc |
diff --git a/chrome/browser/ui/app_modal_dialogs/message_box_handler.cc b/chrome/browser/ui/app_modal_dialogs/message_box_handler.cc |
index 861d0731d66fe057c3ffab6c4d4d39f20ca1435f..9dc374a865920d655aa5a567e003ff8f8b0bba00 100644 |
--- a/chrome/browser/ui/app_modal_dialogs/message_box_handler.cc |
+++ b/chrome/browser/ui/app_modal_dialogs/message_box_handler.cc |
@@ -174,6 +174,9 @@ string16 ChromeJavaScriptDialogCreator::GetTitle(TitleType title_type, |
void ChromeJavaScriptDialogCreator::CancelPendingDialogs( |
content::DialogDelegate* delegate) { |
AppModalDialogQueue* queue = AppModalDialogQueue::GetInstance(); |
+ AppModalDialog* active_dialog = queue->active_dialog(); |
+ if (active_dialog && active_dialog->delegate() == delegate) |
+ active_dialog->Invalidate(); |
for (AppModalDialogQueue::iterator i = queue->begin(); |
i != queue->end(); ++i) { |
if ((*i)->delegate() == delegate) |