diff options
author | Jun-ichi Takimoto <takimoto-j@kba.biglobe.ne.jp> | 2017-12-18 23:49:31 +0900 |
---|---|---|
committer | Jun-ichi Takimoto <takimoto-j@kba.biglobe.ne.jp> | 2017-12-18 23:49:31 +0900 |
commit | dae5d1d5ba8d1e3035d8bc299f221c54e8c90de6 (patch) | |
tree | 29b60d2327e3be6b6efa9deaf87aaaa7f81a1820 | |
parent | 5f33a93afb4da354ce81a564805826995550d275 (diff) | |
download | zsh-dae5d1d5ba8d1e3035d8bc299f221c54e8c90de6.tar.gz zsh-dae5d1d5ba8d1e3035d8bc299f221c54e8c90de6.tar.xz zsh-dae5d1d5ba8d1e3035d8bc299f221c54e8c90de6.zip |
42412: fix a bug in 42116
Also fix a few widgets which were calling wrong function when negative numeric argument was given.
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | Src/Zle/zle_word.c | 8 |
2 files changed, 10 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog index e8913487d..60bbcf640 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,11 @@ 2017-12-18 Jun-ichi Takimoto <takimoto-j@kba.biglobe.ne.jp> + * 42412: Src/Zle/zle_word.c: fix a bug in 42116. Also fix a few + widgets which were calling wrong function when negative numeric + argument was given. + +2017-12-18 Jun-ichi Takimoto <takimoto-j@kba.biglobe.ne.jp> + * 42116: Src/Zle/zle_word.c, Src/Zle/textobjects.c, Src/Zle/zle.h, Test/X02zlevi.ztst: multibyte support for Zle vi-mode word motion diff --git a/Src/Zle/zle_word.c b/Src/Zle/zle_word.c index 4910d765b..89959b20c 100644 --- a/Src/Zle/zle_word.c +++ b/Src/Zle/zle_word.c @@ -86,7 +86,7 @@ viforwardword(char **args) if (n < 0) { int ret; zmult = -n; - ret = backwardword(args); + ret = vibackwardword(args); zmult = n; return ret; } @@ -168,7 +168,7 @@ viforwardblankwordend(char **args) if (n < 0) { int ret; zmult = -n; - ret = viforwardblankwordend(args); + ret = vibackwardblankwordend(args); zmult = n; return ret; } @@ -276,7 +276,7 @@ vibackwardword(char **args) if (n < 0) { int ret; zmult = -n; - ret = backwardword(args); + ret = viforwardword(args); zmult = n; return ret; } @@ -482,7 +482,7 @@ vibackwardkillword(UNUSED(char **args)) cc = wordclass(zleline[pos]); for (;;) { x = pos; - if (x < lim) + if (x <= lim) break; DECPOS(pos); if (wordclass(zleline[pos]) != cc) |