summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--Src/hist.c5
-rw-r--r--Src/params.c9
-rw-r--r--Src/subst.c12
-rw-r--r--Src/zsh.h1
5 files changed, 23 insertions, 9 deletions
diff --git a/ChangeLog b/ChangeLog
index 049640139..4ed4acefe 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2017-09-25 Peter Stephenson <p.w.stephenson@ntlworld.com>
+
+ * 41747: Sr/hist.c, Src/params.c, Src/subst.c. Src/zsh.h: add
+ flag so as not to create hash table when checking existence.
+
2017-09-24 Daniel Shahaf <d.s@daniel.shahaf.name>
* 41755: Doc/Zsh/params.yo: Followup to last: minor clarification
diff --git a/Src/hist.c b/Src/hist.c
index da5a8b29f..177250f31 100644
--- a/Src/hist.c
+++ b/Src/hist.c
@@ -1083,7 +1083,6 @@ hbegin(int dohist)
} else
histactive = HA_ACTIVE | HA_NOINC;
- hf = getsparam("HISTFILE");
/*
* For INCAPPENDHISTORYTIME, when interactive, save the history here
* as it gives a better estimate of the times of commands.
@@ -1104,8 +1103,10 @@ hbegin(int dohist)
*/
if (isset(INCAPPENDHISTORYTIME) && !isset(SHAREHISTORY) &&
!isset(INCAPPENDHISTORY) &&
- !(histactive & HA_NOINC) && !strin && histsave_stack_pos == 0)
+ !(histactive & HA_NOINC) && !strin && histsave_stack_pos == 0) {
+ hf = getsparam("HISTFILE");
savehistfile(hf, 0, HFILE_USE_OPTIONS | HFILE_FAST);
+ }
}
/**/
diff --git a/Src/params.c b/Src/params.c
index c7514de8a..4d4d08085 100644
--- a/Src/params.c
+++ b/Src/params.c