diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/readline/callback.c | 3 | ||||
-rw-r--r-- | lib/readline/vi_mode.c | 2 |
2 files changed, 4 insertions, 1 deletions
diff --git a/lib/readline/callback.c b/lib/readline/callback.c index 4ee63610..7682cd07 100644 --- a/lib/readline/callback.c +++ b/lib/readline/callback.c @@ -148,6 +148,9 @@ rl_callback_read_char () eof = _rl_vi_domove_callback (_rl_vimvcxt); /* Should handle everything, including cleanup, numeric arguments, and turning off RL_STATE_VIMOTION */ + if (RL_ISSTATE (RL_STATE_NUMERICARG) == 0) + _rl_internal_char_cleanup (); + return; } #endif diff --git a/lib/readline/vi_mode.c b/lib/readline/vi_mode.c index 41e1dbb9..a3c35786 100644 --- a/lib/readline/vi_mode.c +++ b/lib/readline/vi_mode.c @@ -1114,7 +1114,7 @@ rl_domove_read_callback (m) rl_beg_of_line (1, c); _rl_vi_last_motion = c; RL_UNSETSTATE (RL_STATE_VIMOTION); - return (0); + return (vidomove_dispatch (m)); } #if defined (READLINE_CALLBACKS) /* XXX - these need to handle rl_universal_argument bindings */ |