rem: searchTermElement.parentNode.removeChild(searchTermElement); 
add:  dump("Removing row " + index + " from " + gSearchTerms.length + " items\n");  gSearchTerms.length--; dump("Now there are " + gSearchTerms.length + " items\n"); 
context: function removeSearchRow(index){    dump("removing search term " + index + "\n");    var searchTermElement = document.getElementById("searchTerm" + index);    if (!searchTermElement) {        dump("removeSearchRow: couldn't find search term " + index + "\n");        return;    }    // need to remove row from tree, so walk upwards from the    // searchattribute to find the first <treeitem>    var treeItemRow = searchTermElement.searchattribute;    while (treeItemRow) {        if (treeItemRow.localName == "treeitem") break;        treeItemRow = treeItemRow.parentNode;    }    if (!treeItemRow) {        dump("Error: couldn't find parent treeitem!\n");        return;    }    if (searchTermElement.searchTerm) {        dump("That was a real row! queuing " + searchTermElement.searchTerm + " for disposal\n");        gSearchRemovedTerms[gSearchRemovedTerms.length] = searchTermElement.searchTerm;    } else {        dump("That wasn't real. ignoring \n");    }        treeItemRow.parentNode.removeChild(treeItemRow);    searchTermElement.parentNode.removeChild(searchTermElement);}
meta: 10234	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/10234/869d7aeb19b7e5f656853604c3291a13ac1cbabc/searchTermOverlay.js/buggy/mailnews/base/search/resources/content/searchTermOverlay.js