wallet_WriteToFile(char* filename, XP_List* list) {
wallet_WriteToFile(char* filename, XP_List* list, PRBool obscure) {
wallet_WriteToFile(char* filename, XP_List* list) {  XP_List * list_ptr;  wallet_MapElement * ptr;  /* open the file for writing */  FILE* fp = fopen(filename, "w");  if (nsnull==fp) {    return;  }  /* make sure the list exists */  if(!list) {    return;  }  /* traverse the list */  list_ptr = list;  while((ptr = (wallet_MapElement *) XP_ListNextObject(list_ptr))!=0) {    char * temp;    temp = ptr->item1->ToNewCString();    fprintf(fp, "%s\n", temp);    delete temp;    if (*ptr->item2 != "") {      temp = ptr->item2->ToNewCString();      fprintf(fp, "%s\n", temp);    } else {      XP_List * list_ptr1;      wallet_Sublist * ptr1;      list_ptr1 = ptr->itemList;      while((ptr1=(wallet_Sublist *) XP_ListNextObject(list_ptr1))!=0) {        temp = ptr->item1->ToNewCString();        fprintf(fp, "%s\n", temp);      }    }    delete temp;    fprintf(fp, "\n"); }  /* close the file */  fclose(fp);}