Ver código fonte

* Backup to tempdir
-Also backup in write_userfile to tempdir/.botnick.user~


svn: 224

Bryan Drewery 22 anos atrás
pai
commit
59845be4ec
2 arquivos alterados com 6 adições e 4 exclusões
  1. 3 3
      src/main.c
  2. 3 1
      src/userrec.c

+ 3 - 3
src/main.c

@@ -696,11 +696,11 @@ static void dtx_arg(int argc, char *argv[])
 #ifdef HUB
 void backup_userfile()
 {
-  char s[125], s2[125];
+  char s[DIRMAX], s2[DIRMAX];
 
   putlog(LOG_MISC, "*", USERF_BACKUP);
-  egg_snprintf(s, sizeof s, "%s.0", userfile);
-  egg_snprintf(s2, sizeof s2, "%s.1", userfile);
+  egg_snprintf(s, sizeof s, "%s/%s.0", tempdir, userfile);
+  egg_snprintf(s2, sizeof s2, "%s/%s.1", tempdir, userfile);
   copyfile(s, s2);
   copyfile(userfile, s);
 }

+ 3 - 1
src/userrec.c

@@ -504,7 +504,7 @@ void write_userfile(int idx)
 {
   FILE *f;
   char *new_userfile;
-  char s1[81];
+  char s1[81], backup[DIRMAX];
   time_t tt;
   struct userrec *u;
   int ok;
@@ -545,6 +545,8 @@ void write_userfile(int idx)
   lfprintf(f, "#DONT DELETE THIS LINE.");
   fclose(f);
   putlog(LOG_DEBUG, "@", "Done writing userfile.");
+  snprintf(backup, sizeof backup, "%s/%s~", tempdir, userfile);
+  copyfile(userfile, backup);
   movefile(new_userfile, userfile);
   nfree(new_userfile);
 }