summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Src/Zle/zle_move.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/Src/Zle/zle_move.c b/Src/Zle/zle_move.c
index a60b4dfd0..1238c1834 100644
--- a/Src/Zle/zle_move.c
+++ b/Src/Zle/zle_move.c
@@ -420,10 +420,12 @@ virepeatfind(char **args)
return ret;
}
while (n--) {
- do
+ do {
zlecs += vfinddir;
- while (zlecs >= 0 && zlecs < zlell && zleline[zlecs] != vfindchar && zleline[zlecs] != '\n');
- if (zlecs < 0 || zlecs >= zlell || zleline[zlecs] == '\n') {
+ } while (zlecs >= 0 && zlecs < zlell
+ && (ZLE_INT_T)zleline[zlecs] != vfindchar
+ && zleline[zlecs] != ZWC('\n'));
+ if (zlecs < 0 || zlecs >= zlell || zleline[zlecs] == ZWC('\n')) {
zlecs = ocs;
return 1;
}