if (hidden) browser.hiddenEngines = engines; else { browser.engines = engines; if (browser == gBrowser || browser == gBrowser.mCurrentBrowser) this.updateSearchButton(); } 
if (hidden) browser.hiddenEngines = engines; else { browser.engines = engines; if (browser == gBrowser || browser == gBrowser.mCurrentBrowser) this.updateSearchButton(); 
  addEngine: function(engine, targetDoc) {    // Set the attribute of the (first) search-engine button.    var searchButton = document.getAnonymousElementByAttribute(this.getSearchBar(), "anonid",                                                               "searchbar-engine-button");    if (searchButton) {      var browser = gBrowser.getBrowserForDocument(targetDoc);      // Append the URI and an appropriate title to the browser data.      var iconURL = null;      if (gBrowser.shouldLoadFavIcon(browser.currentURI))        iconURL = browser.currentURI.prePath + "/favicon.ico";      var hidden = false;      // If this engine (identified by title) is already in the list, add it      // to the list of hidden engines rather than to the main list.      // XXX This will need to be changed when engines are identified by URL;      // see bug 335102.      var searchService = Cc["@mozilla.org/browser/search-service;1"].                          getService(Ci.nsIBrowserSearchService);      if (searchService.getEngineByName(engine.title))        hidden = true;      var engines = [];      if (hidden) {        if (browser.hiddenEngines)          engines = browser.hiddenEngines;      }      else {        if (browser.engines)          engines = browser.engines;      }      engines.push({ uri: engine.href,                     title: engine.title,                     icon: iconURL });      if (hidden)        browser.hiddenEngines = engines;      else {        browser.engines = engines;        if (browser == gBrowser || browser == gBrowser.mCurrentBrowser)          this.updateSearchButton();      }    }  },
5872	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/5872/bd2b254d12ebf93d37bbbce6eba176b7bad15131/browser.js/buggy/browser/base/content/browser.js