diff options
| author | Peter Stephenson <pws@zsh.org> | 2013-10-07 13:01:26 +0100 |
|---|---|---|
| committer | Peter Stephenson <pws@zsh.org> | 2013-10-07 13:01:26 +0100 |
| commit | 6f195241f3ee98c11bc93ab089417012767d9cec (patch) | |
| tree | f70b1059605557945c9e7b6c6c9e649a2bebc5d8 /Src | |
| parent | 31793: Fix problem with non-interactive history. (diff) | |
| download | zsh-6f195241f3ee98c11bc93ab089417012767d9cec.tar zsh-6f195241f3ee98c11bc93ab089417012767d9cec.tar.gz zsh-6f195241f3ee98c11bc93ab089417012767d9cec.tar.bz2 zsh-6f195241f3ee98c11bc93ab089417012767d9cec.tar.lz zsh-6f195241f3ee98c11bc93ab089417012767d9cec.tar.xz zsh-6f195241f3ee98c11bc93ab089417012767d9cec.tar.zst zsh-6f195241f3ee98c11bc93ab089417012767d9cec.zip | |
31794: further refinement to INCAPPENDHISTORY change.
With SHAREHISTORY we should make sure the code behaves as it always
did, because it takes care about locking a file once for reading
and writing.
Diffstat (limited to 'Src')
| -rw-r--r-- | Src/hist.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/Src/hist.c b/Src/hist.c index c58ce8b34..d1af30a29 100644 --- a/Src/hist.c +++ b/Src/hist.c @@ -928,7 +928,15 @@ hbegin(int dohist) histactive = HA_ACTIVE | HA_NOINC; hf = getsparam("HISTFILE"); - if (isset(INCAPPENDHISTORY) && !(histactive & HA_NOINC) && !strin) + /* + * For INCAPPENDHISTORY, when interactive, save the history here + * as it gives a better estimate of the times of commands. + * If SHAREHISTORY is also set continue to do so in the + * standard place, because that's safer about reading and + * rewriting history atomically. + */ + if (isset(INCAPPENDHISTORY) && !isset(SHAREHISTORY) && + !(histactive & HA_NOINC) && !strin) savehistfile(hf, 0, HFILE_USE_OPTIONS | HFILE_FAST); } |
