From 4fc027edf0bec7890a6171e45b6e28cbffbf6f0a Mon Sep 17 00:00:00 2001 From: Peter Stephenson Date: Mon, 4 Aug 2008 17:32:19 +0000 Subject: 25384: fix problem with incorrect autoloads of zsh/zle --- Src/init.c | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) (limited to 'Src/init.c') diff --git a/Src/init.c b/Src/init.c index fcbf9236c..a21b39639 100644 --- a/Src/init.c +++ b/Src/init.c @@ -1206,14 +1206,22 @@ VA_DCL /* autoload */ switch (zle_load_state) { case 0: - if (load_module("zsh/zle", NULL, 0) != 1) { - (void)load_module("zsh/compctl", NULL, 0); - ret = zle_entry_ptr(cmd, ap); - /* Don't execute fallback code */ - cmd = -1; - } else { - zle_load_state = 2; - /* Execute fallback code below */ + /* + * Some commands don't require us to load ZLE. + * These also have no fallback. + */ + if (cmd != ZLE_CMD_TRASH && cmd != ZLE_CMD_RESET_PROMPT && + cmd != ZLE_CMD_REFRESH) + { + if (load_module("zsh/zle", NULL, 0) != 1) { + (void)load_module("zsh/compctl", NULL, 0); + ret = zle_entry_ptr(cmd, ap); + /* Don't execute fallback code */ + cmd = -1; + } else { + zle_load_state = 2; + /* Execute fallback code below */ + } } break; -- cgit 1.4.1