diff options
author | Barton E. Schaefer <schaefer@zsh.org> | 2015-09-12 20:49:13 -0700 |
---|---|---|
committer | Barton E. Schaefer <schaefer@zsh.org> | 2015-09-12 20:49:13 -0700 |
commit | 8a818381cfa843f6bdc25e3517500da31d63c282 (patch) | |
tree | d2628a05eb4e77072dc6801e9c8d008f0bd37afe /Src/Zle | |
parent | 9cb8c3f4b5d9918028791d975cf3aa7d745b4b22 (diff) | |
download | zsh-8a818381cfa843f6bdc25e3517500da31d63c282.tar.gz zsh-8a818381cfa843f6bdc25e3517500da31d63c282.tar.xz zsh-8a818381cfa843f6bdc25e3517500da31d63c282.zip |
36525: revert only the selfinsert() bit of 36496
selfinsert() may be called with incomplete wide character processing from places other than getkeymapcmd()
Diffstat (limited to 'Src/Zle')
-rw-r--r-- | Src/Zle/zle_misc.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/Src/Zle/zle_misc.c b/Src/Zle/zle_misc.c index 297dc4ca8..0483f758d 100644 --- a/Src/Zle/zle_misc.c +++ b/Src/Zle/zle_misc.c @@ -115,7 +115,10 @@ selfinsert(UNUSED(char **args)) ZLE_CHAR_T tmp; #ifdef MULTIBYTE_SUPPORT - DPUTS(!lastchar_wide_valid, "keybuf did not read full wide character"); + /* may be redundant with getkeymapcmd(), but other widgets call here too */ + if (!lastchar_wide_valid) + if (getrestchar(lastchar, NULL, NULL) == WEOF) + return 1; #endif tmp = LASTFULLCHAR; doinsert(&tmp, 1); |