diff options
author | Peter Stephenson <pws@users.sourceforge.net> | 2006-01-06 14:23:00 +0000 |
---|---|---|
committer | Peter Stephenson <pws@users.sourceforge.net> | 2006-01-06 14:23:00 +0000 |
commit | 94953f70b94e639b8b5563295a780a76c37330ab (patch) | |
tree | cdfbf78990e7c05782a2cba7ca33ae1a1804173b /Src/Zle/zle_hist.c | |
parent | d8a851a9a8b29ebf22b2746299697220e200eaa4 (diff) | |
download | zsh-94953f70b94e639b8b5563295a780a76c37330ab.tar.gz zsh-94953f70b94e639b8b5563295a780a76c37330ab.tar.xz zsh-94953f70b94e639b8b5563295a780a76c37330ab.zip |
22124: handle bad multibyte input better
Diffstat (limited to 'Src/Zle/zle_hist.c')
-rw-r--r-- | Src/Zle/zle_hist.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/Src/Zle/zle_hist.c b/Src/Zle/zle_hist.c index 31fa6ace0..af4529489 100644 --- a/Src/Zle/zle_hist.c +++ b/Src/Zle/zle_hist.c @@ -1107,7 +1107,10 @@ doisearch(char **args, int dir) } else if (cmd == Th(z_selfinsert)) { #ifdef MULTIBYTE_SUPPORT if (!lastchar_wide_valid) - getrestchar(lastchar); + if (getrestchar(lastchar) == WEOF) { + handlefeep(zlenoargs); + continue; + } #else ; #endif @@ -1303,7 +1306,10 @@ getvisrchstr(void) } else { #ifdef MULTIBYTE_SUPPORT if (!lastchar_wide_valid) - getrestchar(lastchar); + if (getrestchar(lastchar) == WEOF) { + handlefeep(zlenoargs); + continue; + } #else ; #endif |