rem: if (suggestionURI) var suggestionURL = suggestionURI.spec; else {  
add: this._checkForEngineSwitch(suggestionURI);  if (!searchString || !suggestionURI || !this._okToRequest()) {    
context:   startSearch: function(searchString, searchParam, previousResult, listener) {    var searchService =       Components.classes["@mozilla.org/browser/search-service;1"]                .getService(Components.interfaces.nsIBrowserSearchService);    // If there's an existing request, stop it. There is no smart filtering    // here as there is when looking through history/form data because the    // result set returned by the server is different for every typed value -    // "ocean breathes" does not return a subset of the results returned for    // "ocean", for example. This does nothing if there is no current request.    this.stopSearch();    this._listener = listener;    var suggestionURI = searchService.currentEngine.suggestionURI;    if (suggestionURI)      var suggestionURL = suggestionURI.spec;    else {      // This engine has no suggestion URI. Just send the form history results.      this._sentSuggestRequest = false;      this._startHistorySearch(searchString, searchParam, previousResult);      return;    }    // Actually do the search    this._request =      Components.classes["@mozilla.org/xmlextras/xmlhttprequest;1"]      .createInstance(Components.interfaces.nsIXMLHttpRequest);    this._request.open("GET", suggestionURL + encodeURIComponent(searchString), true);        var self = this;    function onReadyStateChange() {      self.onReadyStateChange();    }    this._request.onreadystatechange = onReadyStateChange;    this._request.send(null);    if (this._includeFormHistory) {      this._sentSuggestRequest = true;      this._startHistorySearch(searchString, searchParam, previousResult);    }  },
meta: 9421	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/9421/974e87d5d5eb2d61db2ef78df939f8e9d2148a74/nsSearchSuggestions.js/buggy/browser/components/search/nsSearchSuggestions.js