Index: chrome/browser/ui/browser_instant_controller.cc |
diff --git a/chrome/browser/ui/browser_instant_controller.cc b/chrome/browser/ui/browser_instant_controller.cc |
index 2a5f283c771182b0b1b5d1622e15e6bc80d15413..0a54dd37453f5737bbe80370e5502fb6a3fe1e51 100644 |
--- a/chrome/browser/ui/browser_instant_controller.cc |
+++ b/chrome/browser/ui/browser_instant_controller.cc |
@@ -5,6 +5,7 @@ |
#include "chrome/browser/ui/browser_instant_controller.h" |
#include "base/bind.h" |
+#include "chrome/browser/infobars/infobar_service.h" |
#include "chrome/browser/profiles/profile.h" |
#include "chrome/browser/search/instant_service.h" |
#include "chrome/browser/search/instant_service_factory.h" |
@@ -160,6 +161,13 @@ void BrowserInstantController::DefaultSearchProviderChanged() { |
// renderer. |
if (!instant_service->IsInstantProcess(rph->GetID())) |
continue; |
+ |
contents->GetController().Reload(false); |
+ |
+ // As the reload was not triggered by the user we don't want to close any |
+ // infobars. We have to tell the InfoBarService after the reload, otherwise |
+ // it would ignore this call when |
+ // WebContentsObserver::DidStartNavigationToPendingEntry is invoked. |
+ InfoBarService::FromWebContents(contents)->set_ignore_next_reload(); |
} |
} |