diff --git a/tcsh-6.20.00-avoid-dotlock-for-fcntl.patch b/tcsh-6.20.00-avoid-dotlock-for-fcntl.patch index 4cb1917..7367d41 100644 --- a/tcsh-6.20.00-avoid-dotlock-for-fcntl.patch +++ b/tcsh-6.20.00-avoid-dotlock-for-fcntl.patch @@ -4,7 +4,7 @@ --- sh.hist.c +++ sh.hist.c 2017-07-19 10:01:20.795354927 +0000 -@@ -1274,6 +1274,11 @@ rechist(Char *fname, int ref) +@@ -1278,6 +1278,11 @@ rechist(Char *fname, int ref) } if (merge) { @@ -16,7 +16,7 @@ if (lock) { #ifndef WINNT_NATIVE char *lockpath = strsave(short2str(fname)); -@@ -1283,6 +1288,7 @@ rechist(Char *fname, int ref) +@@ -1287,6 +1292,7 @@ rechist(Char *fname, int ref) cleanup_push(lockpath, dotlock_cleanup); #endif } diff --git a/tcsh-6.21.0-history-file-locking.patch b/tcsh-6.21.0-history-file-locking.patch index 110c75d..64a3cb8 100644 --- a/tcsh-6.21.0-history-file-locking.patch +++ b/tcsh-6.21.0-history-file-locking.patch @@ -14,18 +14,18 @@ https://bugzilla.redhat.com/show_bug.cgi?id=879371 Changes by Fridolin Pokorny --- - sh.c | 102 +++++++++++++++++++++++++++++++++++++-------------- - sh.decls.h | 4 +- - sh.dol.c | 2 - - sh.err.c | 16 ++++++++ - sh.h | 18 +++++++++ - sh.hist.c | 122 ++++++++++++++++++++++++++++++------------------------------- - sh.lex.c | 8 ++-- - sh.sem.c | 2 - - 8 files changed, 178 insertions(+), 96 deletions(-) + sh.c | 102 ++++++++++++++++++++++++++++++++++++------------ + sh.decls.h | 4 + + sh.dol.c | 2 + sh.err.c | 16 +++++++ + sh.h | 18 ++++++++ + sh.hist.c | 127 ++++++++++++++++++++++++++++--------------------------------- + sh.lex.c | 8 +-- + sh.sem.c | 2 + 8 files changed, 178 insertions(+), 101 deletions(-) --- sh.c -+++ sh.c 2019-08-22 12:07:57.729632215 +0000 ++++ sh.c 2019-08-22 13:02:31.780361102 +0000 @@ -138,6 +138,7 @@ struct saved_state { int cantell; struct Bin B; @@ -245,7 +245,7 @@ Changes by Fridolin Pokorny /* --- sh.decls.h -+++ sh.decls.h 2019-08-22 12:07:57.729632215 +0000 ++++ sh.decls.h 2019-08-22 13:02:31.780361102 +0000 @@ -37,6 +37,7 @@ */ extern Char *gethdir (const Char *); @@ -272,7 +272,7 @@ Changes by Fridolin Pokorny extern void sethistory (int); --- sh.dol.c -+++ sh.dol.c 2019-08-22 12:07:57.729632215 +0000 ++++ sh.dol.c 2019-08-22 13:02:31.780361102 +0000 @@ -1117,6 +1117,6 @@ again: *obp = 0; tmp = short2str(obuf); @@ -282,7 +282,7 @@ Changes by Fridolin Pokorny cleanup_until(&inheredoc); } --- sh.err.c -+++ sh.err.c 2019-08-22 12:07:57.733632140 +0000 ++++ sh.err.c 2019-08-22 13:02:31.780361102 +0000 @@ -511,6 +511,22 @@ open_cleanup(void *xptr) } @@ -307,7 +307,7 @@ Changes by Fridolin Pokorny { DIR *dir; --- sh.h -+++ sh.h 2019-08-22 12:07:57.733632140 +0000 ++++ sh.h 2019-08-22 13:02:31.784361027 +0000 @@ -49,6 +49,24 @@ # include #endif @@ -334,7 +334,7 @@ Changes by Fridolin Pokorny typedef unsigned long intptr_t; #endif --- sh.hist.c -+++ sh.hist.c 2019-08-22 12:24:42.518825681 +0000 ++++ sh.hist.c 2019-08-22 13:02:44.684119766 +0000 @@ -32,6 +32,8 @@ #include "sh.h" #include /* for rename(2), grr. */ @@ -539,7 +539,7 @@ Changes by Fridolin Pokorny struct stat st; static Char *dumphist[] = {STRhistory, STRmhT, 0, 0}; -@@ -1294,35 +1287,37 @@ rechist(Char *fname, int ref) +@@ -1294,52 +1287,50 @@ rechist(Char *fname, int ref) cleanup_push(lockpath, dotlock_cleanup); #endif } @@ -594,9 +594,14 @@ Changes by Fridolin Pokorny + SHOUT = ftmp; + } didfds = oldidfds; - #ifndef WINNT_NATIVE - (void)rename(path, short2str(fname)); -@@ -1335,11 +1330,12 @@ rechist(Char *fname, int ref) +-#ifndef WINNT_NATIVE +- (void)rename(path, short2str(fname)); +-#else +- (void)ReplaceFile( short2str(fname),path,NULL,0,NULL,NULL); +-#endif + cleanup_until(fname); + phup_disabled = phup_disabled_tmp; + } /* This is the entry point for loading history data from a file. */ @@ -612,7 +617,7 @@ Changes by Fridolin Pokorny if (fname != NULL) loadhist_cmd[2] = fname; -@@ -1348,17 +1344,19 @@ loadhist(Char *fname, int mflg) +@@ -1348,17 +1339,19 @@ loadhist(Char *fname, int mflg) else loadhist_cmd[2] = STRtildothist; @@ -637,7 +642,7 @@ Changes by Fridolin Pokorny void --- sh.lex.c -+++ sh.lex.c 2019-08-22 12:07:57.733632140 +0000 ++++ sh.lex.c 2019-08-22 13:02:31.784361027 +0000 @@ -1608,7 +1608,7 @@ wide_read(int fildes, Char *buf, size_t /* Throwing away possible partial multibyte characters on error if the stream is not seekable */ @@ -675,7 +680,7 @@ Changes by Fridolin Pokorny fbuf = xcalloc(2, sizeof(Char **)); fblocks = 1; --- sh.sem.c -+++ sh.sem.c 2019-08-22 12:07:57.733632140 +0000 ++++ sh.sem.c 2019-08-22 13:02:31.784361027 +0000 @@ -905,7 +905,7 @@ doio(struct command *t, int *pipein, int fd = xopen(tmp, O_WRONLY|O_APPEND|O_LARGEFILE); #else /* !O_APPEND */