src/list.c

changeset 4891
ef1b39415657
parent 4865
ee1405634ddd
child 4919
1a003b91915f
--- a/src/list.c	Tue Mar 25 06:26:24 2003 +0000
+++ b/src/list.c	Tue Mar 25 06:35:45 2003 +0000
@@ -1211,6 +1211,7 @@
 	FILE *file;
 	char *user_dir = gaim_user_dir();
 	char *filename;
+	char *filename_real;
 
 	if(!user_dir)
 		return;
@@ -1225,7 +1226,7 @@
 	else
 		fclose(file);
 
-	filename = g_build_filename(user_dir, "blist.xml", NULL);
+	filename = g_build_filename(user_dir, "blist.xml.save", NULL);
 
 	if((file = fopen(filename, "w"))) {
 		gaim_blist_write(file, NULL);
@@ -1235,7 +1236,14 @@
 		debug_printf("unable to write %s\n", filename);
 	}
 
+	filename_real = g_build_filename(user_dir, "blist.xml", NULL);
+
+	if(rename(filename, filename_real) < 0)
+		debug_printf("error renaming %s to %s\n", filename, filename_real);
+
+
 	g_free(filename);
+	g_free(filename_real);
 }
 
 gboolean gaim_privacy_permit_add(struct gaim_account *account, const char *who) {

mercurial