diff -u -r xwpe-1.5.21a/Makefile.in xwpe-1.5.21.baksuffix/Makefile.in --- xwpe-1.5.21a/Makefile.in Fri Nov 19 04:06:05 1999 +++ xwpe-1.5.21.baksuffix/Makefile.in Sat Dec 4 18:22:47 1999 @@ -40,6 +40,8 @@ # -DNOSYMLINKS :No symbolic links # -DXDB :System has xdb not dbx # -DTERMCAP :Use termcap instead of curses +# -DSIMPLE_BACKUP_SUFFIX=\"\" +# : The bak-file suffix, default is TurboC-like # -DDEFAULT_ALTMASK=Mod3Mask # :Mask to determined if alt is pressed in X # -DINFO_DIR=\"/usr/local/info\" diff -u -r xwpe-1.5.21a/edit.h xwpe-1.5.21.baksuffix/edit.h --- xwpe-1.5.21a/edit.h Fri Nov 19 04:06:05 1999 +++ xwpe-1.5.21.baksuffix/edit.h Sat Dec 4 18:04:12 1999 @@ -517,6 +517,7 @@ int e_quit(FENSTER *f); int e_write(int xa, int ya, int xe, int ye, FENSTER *f); char *e_new_qual(char *s, char *ns, char *sb); +char *e_bakfilename(char *s, char *sb); int freedf(struct dirfile *df); int e_file_window(int sw, FLWND *fw, int ft, int fz); int e_pr_file_window(FLWND *fw, int c, int sw, int ft, int fz, int fs); diff -u -r xwpe-1.5.21a/we_fl_fkt.c xwpe-1.5.21.baksuffix/we_fl_fkt.c --- xwpe-1.5.21a/we_fl_fkt.c Fri Nov 19 04:06:05 1999 +++ xwpe-1.5.21.baksuffix/we_fl_fkt.c Sat Dec 4 18:09:06 1999 @@ -256,7 +256,7 @@ ptmp = e_mkfilename(f->dirct, f->datnam); if (access(ptmp, 0) == 0) { - if (access(e_new_qual(ptmp, "bak", tmp), 0) == 0) + if (access(e_bakfilename(ptmp, tmp), 0) == 0) remove(tmp); WpeRenameCopy(ptmp, tmp, f, 1); } @@ -329,6 +329,30 @@ strcat(sb, "."); strcat(sb, ns); return(sb); +} + +/* make up the bak-file name */ +char *e_bakfilename(char* s, char* sb) +{ + /* "" is the special code for TurboC replace-extension style */ +# ifndef SIMPLE_BACKUP_SUFFIX +# define SIMPLE_BACKUP_SUFFIX "" +# endif + + static char* bak = NULL; + if (!bak) { + bak = getenv("SIMPLE_BACKUP_SUFFIX"); + if (!bak) bak = SIMPLE_BACKUP_SUFFIX; + } + + if (!*bak) + return e_new_qual (s, "bak", sb); /* TurboC style */ + else + { + strcpy (sb, s); + strcat (sb, bak); + return (sb); + } } /* File/Directory-Struktur freigeben */