rem: SignonColumnSort('host'); 
add: SignonColumnSort('hostname'); 
context: function LoadSignons() {  // loads signons into table  var enumerator = passwordmanager.enumerator;  var count = 0;  while (enumerator.hasMoreElements()) {    var nextPassword;    try {      nextPassword = enumerator.getNext();    } catch(e) {      /* user supplied invalid database key */      window.close();      return false;    }    nextPassword = nextPassword.QueryInterface(Components.interfaces.nsIPassword);    var host = nextPassword.host;    var user;    var password;    // try/catch in case decryption fails (invalid signon entry)    try {      user = nextPassword.user;      password = nextPassword.password;    } catch (e) {      // hide this entry      dump("could not decrypt user/password for host " + host + "\n");      continue;    }    var rawuser = user;    // if no username supplied, try to parse it out of the url    if (user == "") {      var ioService = Components.classes["@mozilla.org/network/io-service;1"]                    .getService(Components.interfaces.nsIIOService);      try {        user = ioService.newURI(host, null, null).username;        if (user == "") {          user = "<>";        }      } catch(e) {        user = "<>";      }    }    signons[count] = new Signon(count++, host, user, rawuser, password);  }  signonsTreeView.rowCount = signons.length;  // sort and display the table  signonsTree.treeBoxObject.view = signonsTreeView;  SignonColumnSort('host');  // disable "remove all signons" button if there are no signons  var element = document.getElementById("removeAllSignons");  var toggle = document.getElementById("togglePasswords");  if (signons.length == 0 || gSelectUserInUse) {    element.setAttribute("disabled","true");    toggle.setAttribute("disabled","true");  } else {    element.removeAttribute("disabled");    toggle.removeAttribute("disabled");  }   return true;}
meta: 8395	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/8395/405957fd020626d50178ae11d0087ec336edc47c/passwordManager.js/buggy/toolkit/components/passwordmgr/content/passwordManager.js