summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--Src/init.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index f70f4698f..eab0592cc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2005-06-13  Bart Schaefer  <schaefer@zsh.org>
+
+	* 21328: Src/init.c: in loop(), avoid preprompt() when not looping at
+	the top level (prevents double precmd call during "fc -e -").
+
 2005-06-11  Doug Kearns  <djkea2@gus.gscit.monash.edu.au>
 
 	* 21316 (modified): Completion/Unix/Command/_less,
diff --git a/Src/init.c b/Src/init.c
index b9658af63..2dc1f8110 100644
--- a/Src/init.c
+++ b/Src/init.c
@@ -112,7 +112,7 @@ loop(int toplevel, int justonce)
 	hbegin(1);		/* init history mech        */
 	if (isset(SHINSTDIN)) {
 	    setblock_stdin();
-	    if (interact) {
+	    if (interact && toplevel) {
 	        int hstop = stophist;
 		stophist = 3;
 		preprompt();