add:     if (typeArray[slot] == "false") typeArray[slot] = false; else if (typeArray[slot] == "true") typeArray[slot] = true;  
context: function saveAccount(accountValues, account){  var identity = null;  var server = null;  if (account) {    identity = account.defaultIdentity;    server = account.incomingServer;  }  for (var type in accountValues) {    var typeArray = accountValues[type];    for (var slot in typeArray) {      var dest;      try {      if (type == "identity")        dest = identity;      else if (type == "server")        dest = server;      else if (type == "pop3")        dest = server.QueryInterface(Components.interfaces.nsIPop3IncomingServer);      else if (type == "imap")        dest = server.QueryInterface(Components.interfaces.nsIImapIncomingServer);      else if (type == "none")        dest = server.QueryInterface(Components.interfaces.nsINoIncomingServer);      else if (type == "nntp")        dest = server.QueryInterface(Components.interfaces.nsINntpIncomingServer);      else if (type == "smtp")        dest = smtpService.defaultServer;      } catch (ex) {        // don't do anything, just means we don't support that      }      if (dest == undefined) continue;      if ((type in gGenericAttributeTypes) && (slot in gGenericAttributeTypes[type])) {        switch (gGenericAttributeTypes[type][slot]) {          case "int":            if (dest.getIntAttribute(slot) != typeArray[slot])              dest.setIntAttribute(slot, typeArray[slot]);            break;          case "wstring":            if (dest.getUnicharAttribute(slot) != typeArray[slot])              dest.setUnicharAttribute(slot, typeArray[slot]);            break;          case "string":            if (dest.getCharAttribute(slot) != typeArray[slot])              dest.setCharAttribute(slot, typeArray[slot]);            break;          case "bool":            if (dest.getBoolAttribute(slot) != typeArray[slot])              dest.setBoolAttribute(slot, typeArray[slot]);            break;          default:            dump("unexpected preftype: " + preftype + "\n");            break;         }      }      else {      if (dest[slot] != typeArray[slot]) {        try {          dest[slot] = typeArray[slot];          }           catch (ex) {          // hrm... need to handle special types here        }      }    }  }}}
meta: 10234	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/10234/e0be36c11ea324bd995eaa68feb204e30909010c/AccountManager.js/buggy/mailnews/base/prefs/resources/content/AccountManager.js