--- o/unixfsys.c.orig 2010-09-22 13:03:11.000000000 -0600
+++ o/unixfsys.c 2010-12-29 11:52:55.301247671 -0700
@@ -412,11 +412,17 @@ FILE *
backup_fopen(char *filename, char *option)
{
char backupfilename[MAXPATHLEN];
- char command[MAXPATHLEN * 2];
+#ifndef HAVE_RENAME
+ char command[MAXPATHLEN * 2 + 4];
+#endif
strcat(strcpy(backupfilename, filename), ".BAK");
+#ifdef HAVE_RENAME
+ rename(filename, backupfilename);
+#else
sprintf(command, "mv %s %s", filename, backupfilename);
msystem(command);
+#endif
return(fopen(filename, option));
}
@@ -441,6 +447,9 @@ LFD(Lrename_file)(void)
{
char filename[MAXPATHLEN];
char newfilename[MAXPATHLEN];
+#ifndef HAVE_RENAME
+ char command[MAXPATHLEN * 2 + 4];
+#endif
check_arg(2);
check_type_or_pathname_string_symbol_stream(&vs_base[0]);