On Sat Oct 21 09:58:32 1995, Danek Duvall wrote about ``appendhistory and history file truncation'': > > I haven't seen this show up on the list, so I thought I'd chime in. > > I'm having a problem wherein whenever I start up an invocation of zsh > (2.6 beta10), my history file gets wiped. It doesn't happen when > NO_RCS is set (if I do zsh -f). It seems that even though > APPENDHISTORY is set, savehistfile() ends up opening the file mode > O_TRUNC on line 1471 of hist.c (at least, I think this is the > culprit). Perhaps this line should be rewritten as the block in lines > 1420-1423. > > I checked beta11-test10, and it hasn't been fixed. > > Here's a really straightforward patch to beta10, which *should* fix > the problem, though I haven't tested it. Rewrite as you wish, but I > think this is the right thing to do. > > Thanks, > Danek > > --- hist.c.orig Sat Oct 21 03:54:08 1995 > +++ hist.c Sat Oct 21 03:56:30 1995 > @@ -1468,7 +1468,11 @@ > histnum++; > } > fclose(out); > - if ((out = fdopen(open(s, O_WRONLY | O_TRUNC, 0600), "w"))) { > + if (app & 1) > + out = fdopen(open(s, O_CREAT | O_WRONLY | O_APPEND, 0600), "a"); > + else > + out = fdopen(open(s, O_CREAT | O_WRONLY | O_TRUNC, 0600), "w"); > + if (out) { > if (histnum < savehist) > for (i = 0; i < histnum; i++) > fprintf(out, "%s", store[i]); > > -- > Danek Duvall For my PGP key, send mail with > Computer Science, Princeton University subject "get pgp key" or look > http://lorien.princeton.edu/~duvall/ it up on the keyservers. > > > As far as I have been able to verify, this works for non-login shells. However, if I log out and then login again, the problem persists even after applying the patch. -- Dr. Zvi Har'El Department of Mathematics +972-4-294094(Phone) Technion - Israel Institute of Technology +972-4-324654(FAX) http://gauss.technion.ac.il/~rl Haifa 32000, ISRAEL ``If you can't say somethin' nice, don't say nothin' at all.''--Thumper (1942)