about summary refs log tree commit diff
diff options
context:
space:
mode:
authorPeter Stephenson <p.w.stephenson@ntlworld.com>2014-12-07 17:40:13 +0000
committerPeter Stephenson <p.w.stephenson@ntlworld.com>2014-12-07 17:40:13 +0000
commitd90554e46932c73e24aa9748161d069468ad0713 (patch)
tree81d15c1750e104cc9b0153f5ac6600df1ac4b41c
parente385312e0937aecd40ca9eac43d88ad4ec0542e7 (diff)
downloadzsh-d90554e46932c73e24aa9748161d069468ad0713.tar.gz
zsh-d90554e46932c73e24aa9748161d069468ad0713.tar.xz
zsh-d90554e46932c73e24aa9748161d069468ad0713.zip
Remove interrupt status on return to main keymap.
-rw-r--r--Src/Zle/zle_keymap.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/Src/Zle/zle_keymap.c b/Src/Zle/zle_keymap.c
index 30d25ebaa..48f210c7e 100644
--- a/Src/Zle/zle_keymap.c
+++ b/Src/Zle/zle_keymap.c
@@ -504,6 +504,16 @@ mod_export void
 selectlocalmap(Keymap m)
 {
     localkeymap = m;
+    if (!m)
+    {
+	/*
+	 * No local keymap; so we are returning to the global map.  If
+	 * the user ^Ced in the local map, they probably just want to go
+	 * back to normal editing.  So remove the interrupt error
+	 * status.
+	 */
+	errflag &= ~ERRFLAG_INT;
+    }
 }
 
 /* Reopen the currently selected keymap, in case it got deleted.  This *