diff options
author | Axel Beckert <abe@deuxchevaux.org> | 2014-10-08 01:36:43 +0200 |
---|---|---|
committer | Axel Beckert <abe@deuxchevaux.org> | 2014-10-08 01:36:43 +0200 |
commit | 2d470422982f5ddd1720b8ae91a65b43a3a72798 (patch) | |
tree | 238aa19ff374f195c3ca0b42637c939f62ec1310 | |
parent | 1c3f90e3af0c3d6c8e946653169287baf5814ad4 (diff) | |
download | zsh-2d470422982f5ddd1720b8ae91a65b43a3a72798.tar.gz zsh-2d470422982f5ddd1720b8ae91a65b43a3a72798.zip |
Drop all cherry-picked patches
3 files changed, 0 insertions, 182 deletions
diff --git a/debian/patches/cherry-pick-4414e54e-prevent-double-locking-with-shared-or-incremental-history b/debian/patches/cherry-pick-4414e54e-prevent-double-locking-with-shared-or-incremental-history deleted file mode 100644 index 62ce2bd5f..000000000 --- a/debian/patches/cherry-pick-4414e54e-prevent-double-locking-with-shared-or-incremental-history +++ /dev/null @@ -1,44 +0,0 @@ -Origin: commit:4414e54ea7ffe50acca851c11c2ef49dc867c55d -Author: Barton E. Schaefer <schaefer@zsh.org> -Subject: 33116: followup to 32580 to prevent double-locking with shared or incremental history -Bug-Debian: https://bugs.debian.org/761597 - -diff --git a/Src/hist.c b/Src/hist.c -index 770d559..d29a65a 100644 ---- a/Src/hist.c -+++ b/Src/hist.c -@@ -2490,6 +2490,9 @@ flockhistfile(char *fn, int keep_trying) - struct flock lck; - int ctr = keep_trying ? 9 : 0; - -+ if (flock_fd >= 0) -+ return 0; /* already locked */ -+ - if ((flock_fd = open(unmeta(fn), O_RDWR | O_NOCTTY)) < 0) - return errno == ENOENT ? 0 : 2; /* "successfully" locked missing file */ - -@@ -2768,12 +2771,6 @@ lockhistfile(char *fn, int keep_trying) - if (!fn && !(fn = getsparam("HISTFILE"))) - return 1; - --#ifdef HAVE_FCNTL_H -- if (isset(HISTFCNTLLOCK) && flock_fd < 0) { -- return flockhistfile(fn, keep_trying); -- } --#endif -- - if (!lockhistct++) { - struct stat sb; - int fd; -@@ -2786,6 +2783,11 @@ lockhistfile(char *fn, int keep_trying) - # endif - #endif - -+#ifdef HAVE_FCNTL_H -+ if (isset(HISTFCNTLLOCK)) -+ return flockhistfile(fn, keep_trying); -+#endif -+ - lockfile = bicat(unmeta(fn), ".LOCK"); - /* NOTE: only use symlink locking on a link()-having host in order to - * avoid a change from open()-based locking to symlink()-based. */ diff --git a/debian/patches/cherry-pick-87270496-make-lexrestore-more-signal-safe b/debian/patches/cherry-pick-87270496-make-lexrestore-more-signal-safe deleted file mode 100644 index 9574ddfcf..000000000 --- a/debian/patches/cherry-pick-87270496-make-lexrestore-more-signal-safe +++ /dev/null @@ -1,136 +0,0 @@ -Origin: commit 8727049674b1f39a8926c02dc74e9f19bbd70289 -Author: Barton E. Schaefer <schaefer@zsh.org> -Date: Tue Sep 30 20:34:58 2014 -0700 -Bug: http://www.zsh.org/mla/workers/2014/msg01083.html -Bug-Debian: https://bugs.debian.org/760061 -Description: make lexrestore() more signal-safe - At least mitigates #760061. - -diff --git a/Src/lex.c b/Src/lex.c -index 8e9a49f..1a854f5 100644 ---- a/Src/lex.c -+++ b/Src/lex.c -@@ -325,66 +325,70 @@ lexsave(void) - mod_export void - lexrestore(void) - { -- struct lexstack *ln; -+ struct lexstack *ln = lstack; - - DPUTS(!lstack, "BUG: lexrestore() without lexsave()"); -- incmdpos = lstack->incmdpos; -- incond = lstack->incond; -- incasepat = lstack->incasepat; -- dbparens = lstack->dbparens; -- isfirstln = lstack->isfirstln; -- isfirstch = lstack->isfirstch; -- histactive = lstack->histactive; -- histdone = lstack->histdone; -- lexflags = lstack->lexflags; -- stophist = lstack->stophist; -- chline = lstack->hline; -- hptr = lstack->hptr; -+ -+ queue_signals(); -+ lstack = lstack->next; -+ -+ if (!lstack) { -+ /* Back to top level: don't need special ZLE value */ -+ DPUTS(ln->hline != zle_chline, "BUG: Ouch, wrong chline for ZLE"); -+ zle_chline = NULL; -+ } -+ -+ incmdpos = ln->incmdpos; -+ incond = ln->incond; -+ incasepat = ln->incasepat; -+ dbparens = ln->dbparens; -+ isfirstln = ln->isfirstln; -+ isfirstch = ln->isfirstch; -+ histactive = ln->histactive; -+ histdone = ln->histdone; -+ lexflags = ln->lexflags; -+ stophist = ln->stophist; -+ chline = ln->hline; -+ hptr = ln->hptr; - if (cmdstack) -- free(cmdstack); -- cmdstack = lstack->cstack; -- cmdsp = lstack->csp; -- tok = lstack->tok; -- isnewlin = lstack->isnewlin; -- tokstr = lstack->tokstr; -- zshlextext = lstack->zshlextext; -- bptr = lstack->bptr; -- bsiz = lstack->bsiz; -- len = lstack->len; -- chwords = lstack->chwords; -- chwordlen = lstack->chwordlen; -- chwordpos = lstack->chwordpos; -- hwgetword = lstack->hwgetword; -- lexstop = lstack->lexstop; -- hdocs = lstack->hdocs; -- hgetc = lstack->hgetc; -- hungetc = lstack->hungetc; -- hwaddc = lstack->hwaddc; -- hwbegin = lstack->hwbegin; -- hwend = lstack->hwend; -- addtoline = lstack->addtoline; -+ zfree(cmdstack, CMDSTACKSZ); -+ cmdstack = ln->cstack; -+ cmdsp = ln->csp; -+ tok = ln->tok; -+ isnewlin = ln->isnewlin; -+ tokstr = ln->tokstr; -+ zshlextext = ln->zshlextext; -+ bptr = ln->bptr; -+ bsiz = ln->bsiz; -+ len = ln->len; -+ chwords = ln->chwords; -+ chwordlen = ln->chwordlen; -+ chwordpos = ln->chwordpos; -+ hwgetword = ln->hwgetword; -+ lexstop = ln->lexstop; -+ hdocs = ln->hdocs; -+ hgetc = ln->hgetc; -+ hungetc = ln->hungetc; -+ hwaddc = ln->hwaddc; -+ hwbegin = ln->hwbegin; -+ hwend = ln->hwend; -+ addtoline = ln->addtoline; - if (ecbuf) - zfree(ecbuf, eclen); -- eclen = lstack->eclen; -- ecused = lstack->ecused; -- ecnpats = lstack->ecnpats; -- ecbuf = lstack->ecbuf; -- ecstrs = lstack->ecstrs; -- ecsoffs = lstack->ecsoffs; -- ecssub = lstack->ecssub; -- ecnfunc = lstack->ecnfunc; -- hlinesz = lstack->hlinesz; -- toklineno = lstack->toklineno; -+ eclen = ln->eclen; -+ ecused = ln->ecused; -+ ecnpats = ln->ecnpats; -+ ecbuf = ln->ecbuf; -+ ecstrs = ln->ecstrs; -+ ecsoffs = ln->ecsoffs; -+ ecssub = ln->ecssub; -+ ecnfunc = ln->ecnfunc; -+ hlinesz = ln->hlinesz; -+ toklineno = ln->toklineno; - errflag = 0; -+ free(ln); - -- ln = lstack->next; -- if (!ln) { -- /* Back to top level: don't need special ZLE value */ -- DPUTS(chline != zle_chline, "BUG: Ouch, wrong chline for ZLE"); -- zle_chline = NULL; -- } -- free(lstack); -- lstack = ln; -+ unqueue_signals(); - } - - /**/ diff --git a/debian/patches/series b/debian/patches/series index f9bc353cf..8d7c83249 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,3 +1 @@ replace-texi2html-with-makeinfo -cherry-pick-4414e54e-prevent-double-locking-with-shared-or-incremental-history -cherry-pick-87270496-make-lexrestore-more-signal-safe |