diff options
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | Src/Zle/zle_thingy.c | 4 |
2 files changed, 10 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog index dda4ec48d..d8a87e54d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2016-09-27 Oliver Kiddle <opk@zsh.org> + + * 39369 (tweaked cf 39371): Src/Zle/zle_thingy.c: when calling + an internal widget, set bindk because some widgets use it to + determine how they should act + 2016-09-27 Barton E. Schaefer <schaefer@zsh.org> * 39437: Src/exec.c: use list_pipe_pid in assignment for clarity diff --git a/Src/Zle/zle_thingy.c b/Src/Zle/zle_thingy.c index 910715491..505aea065 100644 --- a/Src/Zle/zle_thingy.c +++ b/Src/Zle/zle_thingy.c @@ -756,6 +756,10 @@ bin_zle_call(char *name, char **args, UNUSED(Options ops), UNUSED(char func)) } t = rthingy(wname); + /* for internal widgets we set bindk except for when getting + * a vi range to detect a repeated key */ + setbindk = setbindk || + (t->widget && (t->widget->flags & (WIDGET_INT | ZLE_VIOPER)) == WIDGET_INT)); ret = execzlefunc(t, args, setbindk); unrefthingy(t); if (saveflag) |