diff --git a/browser/components/search/content/search.xml b/browser/components/search/content/search.xml
index fc4328a3dc1f..289b40c77ba0 100644
--- a/browser/components/search/content/search.xml
+++ b/browser/components/search/content/search.xml
@@ -67,25 +67,25 @@
+ // Make sure we rebuild the popup in onpopupshowing
+ this._needToBuildPopup = true;
-
-
-
+ this._addedObserver = true;
+
+ this.searchService.init((function search_init_cb(aStatus) {
+ if (Components.isSuccessCode(aStatus)) {
+ // Refresh the display (updating icon, etc)
+ this.updateDisplay();
+ } else {
+ Components.utils.reportError("Cannot initialize search service, bailing out: " + aStatus);
+ }
+ }).bind(this));
+ ]]>