summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBart Schaefer <barts@users.sourceforge.net>2012-11-08 16:50:38 +0000
committerBart Schaefer <barts@users.sourceforge.net>2012-11-08 16:50:38 +0000
commitcba5449c3d4d140af05b7a6d726afbbab2f55f31 (patch)
tree2065e1934fd473c0ca0a2f2e50521ab1aaeeed73
parent64e925bd65888856f365de45542b0c0eea25af2e (diff)
downloadzsh-cba5449c3d4d140af05b7a6d726afbbab2f55f31.tar.gz
zsh-cba5449c3d4d140af05b7a6d726afbbab2f55f31.zip
30786: do not enter interactive history editing or command execution if
"fc" is called from a ZLE widget.
-rw-r--r--ChangeLog7
-rw-r--r--Src/builtin.c6
2 files changed, 12 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index be74b5bb8..aa5473e4d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2012-11-08 Bart Schaefer <schaefer@zsh.org>
+
+ * 30786: Src/builtin.c: do not enter interactive history editing
+ or command execution if "fc" is called from a ZLE widget.
+
2012-11-08 Peter Stephenson <pws@csr.com>
* 30783: Src/lex.c: we don't want leading "="'s to be active when
@@ -311,5 +316,5 @@
*****************************************************
* This is used by the shell to define $ZSH_PATCHLEVEL
-* $Revision: 1.5755 $
+* $Revision: 1.5756 $
*****************************************************
diff --git a/Src/builtin.c b/Src/builtin.c
index 8a83df711..90fe1a6c5 100644
--- a/Src/builtin.c
+++ b/Src/builtin.c
@@ -1414,6 +1414,12 @@ bin_fc(char *nam, char **argv, Options ops, int func)
unqueue_signals();
return 0;
}
+
+ if (zleactive) {
+ zwarnnam(nam, "no interactive history within ZLE");
+ return 1;
+ }
+
/* put foo=bar type arguments into the substitution list */
while (*argv && equalsplit(*argv, &s)) {
Asgment a = (Asgment) zhalloc(sizeof *a);