Sophie

Sophie

distrib > Mandriva > 2008.1 > i586 > by-pkgid > a791f210fd2615ac13384241139dbe50 > files > 5

BitchX-1.1-9mdv2008.1.src.rpm

--- source/irc.c.chmou	Sun Feb 28 04:10:42 1999
+++ source/irc.c	Fri Jan 14 01:14:02 2000
@@ -1673,6 +1673,43 @@
 	}
 }
 
+static const char *suffixes[] = {
+	"formats",
+	"kck",
+	"reasons",
+	"nam",
+	"ircnames",
+	"qt",
+	"quit",
+	"sav",
+	NULL };
+
+void cleanup_configs();
+void cleanup_configs()
+{
+	const char **suffix = suffixes;
+	char *in, *out;
+	char infile[PATH_MAX], outfile[PATH_MAX];
+	struct stat instat, outstat;
+	
+	infile[PATH_MAX - 1] = outfile[PATH_MAX - 1] = '\0';
+	for(suffix = suffixes; *suffix; suffix++) {
+		snprintf(outfile, PATH_MAX - 1, "%s/%s.%s",
+			get_string_var(CTOOLZ_DIR_VAR), version, *suffix);
+		snprintf(infile, PATH_MAX - 1, "%s/%s%s.%s",
+			get_string_var(CTOOLZ_DIR_VAR), version, "+Mandrake", *suffix);
+
+		in = expand_twiddle(infile);
+		out = expand_twiddle(outfile);
+		
+		if(!stat(in, &instat))	/* Bad file exists? */
+			if(stat(out, &outstat)	/* Bad, but no good. */
+			   || (instat.st_mtime > outstat.st_mtime)) {	/* Both, bad one newer */
+				rename(in, out);
+			}
+		new_free(&in); new_free(&out);
+	}
+}
 
 int main(int argc, char *argv[], char *envp[])
 {