From 0c86e70bf0a4bd25c7b87a428eb3a6f800436b30 Mon Sep 17 00:00:00 2001 From: Jan Edmund Lazo Date: Wed, 23 Sep 2020 00:57:50 -0400 Subject: [PATCH] vim-patch:8.2.1608: Vim9: getchar() test fails with GUI Problem: Vim9: getchar() test fails with GUI. Solution: Avoid that getchar(0) gets stuck on K_IGNORE. https://github.com/vim/vim/commit/15183b41c4416b7638cce26de0a9a83e55948bdc N/A patches for version.c: vim-patch:8.1.0323: reverse order of VTP calls only needed the first time Problem: Reverse order of VTP calls only needed the first time. Solution: Add a flag to remember the state. (Nobuhiro Takasaki, closes vim/vim#3366) https://github.com/vim/vim/commit/2551c037e41b3c2702d3ec30ee518c11966b19e6 vim-patch:8.1.0777: Win32: using pipes for channel does not work well Problem: Win32: using pipes for channel does not work well. Solution: Use a larger buffer and handle overlaps. (Yasuhiro Matsumoto, closes vim/vim#3782) https://github.com/vim/vim/commit/b091f30bf38eacb31b9d8c97c82c7e0af9866301 vim-patch:8.1.0933: When using VTP scroll region isn't used properly Problem: When using VTP scroll region isn't used properly. Solution: Make better use of the scroll region. (Nobuhiro Takasaki, closes vim/vim#3974) https://github.com/vim/vim/commit/6982f42f33b2868e4b9884514cfe8e357b727498 vim-patch:8.1.0938: background color is wrong in MS-Windows console Problem: Background color is wrong in MS-Windows console when not using VTP. Solution: Use g_attrCurrent. (Nobuhiro Takasaki, closes vim/vim#3987) https://github.com/vim/vim/commit/21edde87426eeeaf46e118a137a7fa0e86ad167e vim-patch:8.2.0178: with VTP the screen may not be restored properly Problem: With VTP the screen may not be restored properly. Solution: Add another set of saved RGB values. (Nobuhiro Takasaki, closes vim/vim#5548) https://github.com/vim/vim/commit/df54382eacdbfa10291adb80ad6b89ad83bd7c9b vim-patch:8.2.0248: MS-Windows: dealing with deprecation is too complicated Problem: MS-Windows: dealing with deprecation is too complicated. Solution: Use io.h directly. Move _CRT_SECURE_NO_DEPRECATE to the build file. Suppress C4091 warning by setting "_WIN32_WINNT". (Ken Takata, closes vim/vim#5626) https://github.com/vim/vim/commit/2f189750887636fecd440d7ef353d9224e48713f vim-patch:8.2.0547: Win32: restoring screen not always done right Problem: Win32: restoring screen not always done right. Solution: Use a more appropriate method. (Nobuhiro Takasaki, closes vim/vim#5909) https://github.com/vim/vim/commit/e7f234120f71a75f0c7c2a67e0b70c6450c50a02 vim-patch:8.2.0581: Win32 console: the cursor position is always top-left Problem: Win32 console: the cursor position is always top-left. Solution: Revert the patch for restoring screen. https://github.com/vim/vim/commit/81ccbf199f0d553efdd57bec9bb8e23d91d2fb0d vim-patch:8.2.0592: MS-Windows with VTP: cursor is not made invisible Problem: MS-Windows with VTP: cursor is not made invisible. Solution: Output the code to make the cursor visible or invisible. (Nobuhiro Takasaki, closes vim/vim#5941) https://github.com/vim/vim/commit/2695de63e370235c4d3d73e3fe07cc1006de3460 vim-patch:8.2.0646: t_Co uses the value of $COLORS in the GUI Problem: t_Co uses the value of $COLORS in the GUI. (Masato Nishihata) Solution: Ignore $COLORS for the GUI. (closes vim/vim#5992) https://github.com/vim/vim/commit/759d81549c1340185f0d92524c563bb37697ea88 vim-patch:8.2.0658: HP-UX build fails when setenv() is not defined Problem: HP-UX build fails when setenv() is not defined. Solution: Change "colors" to "t_colors". (John Marriott) https://github.com/vim/vim/commit/affc8fd2cda77fbd47df2594da417a9f9a9bb9b6 vim-patch:8.2.0793: MS-Windows: cannot build GUI with small features Problem: MS-Windows: cannot build GUI with small features. (Michael Soyka) Solution: Add #ifdef around use of windowsVersion. (Ken Takata) https://github.com/vim/vim/commit/1e1d2e89fa460328883bb09fb13a24e26ef1ab31 vim-patch:8.2.1975: Win32: memory leak when encoding conversion fails Problem: Win32: memory leak when encoding conversion fails. Solution: Free the allocated memory. (Ken Takata, closes vim/vim#7277) https://github.com/vim/vim/commit/bbf9f344afd08954163191ed678352fb554fc254 vim-patch:8.2.1991: Coverity warns for not using the ga_grow() return value Problem: Coverity warns for not using the ga_grow() return value. Solution: Bail out if ga_grow() fails. (Yegappan Lakshmanan, closes vim/vim#7303) https://github.com/vim/vim/commit/ca359cbedd0d603124776e7a6ca0ae79ffc34cdc vim-patch:8.2.1992: build fails with small features Problem: Build fails with small features. Solution: Add #ifdef. https://github.com/vim/vim/commit/4792a679f9e08fc6026a596be3d364cecb70b049 vim-patch:8.2.1993: occasional failure of the netbeans test Problem: Occasional failure of the netbeans test. Solution: Add "silent!". (Yegappan Lakshmanan, closes vim/vim#7304) https://github.com/vim/vim/commit/50dc3ecc642ee88348cb353cf85d08eac26c75dd vim-patch:8.2.1994: MS-Windows: MinGW always does a full build Problem: MS-Windows: MinGW always does a full build. Solution: Only check if $OUTDIR exists. (Masamichi Abe, closes vim/vim#7311) https://github.com/vim/vim/commit/c4390fe6c0d1b47b1acd373d7e8ef986412c0600 vim-patch:8.2.1998: terminal Cmd test sometimes fails to close popup Problem: Terminal Cmd test sometimes fails to close popup. Solution: Add "term_finish" option. https://github.com/vim/vim/commit/27f4f6baeeb25e1597a7827f4a509ecf2eb8e6e2 vim-patch:8.2.1999: terminal popup test sometimes fails Problem: Terminal popup test sometimes fails. Solution: Wait for the popup to close. https://github.com/vim/vim/commit/e6329e4c55cd81b6134820eab6a10b02c11c1277 vim-patch:8.2.2003: build error with +conceal but without +popupwin Problem: Build error with +conceal but without +popupwin. Solution: Add #ifdef. (Tom Ryder, closes vim/vim#7316) https://github.com/vim/vim/commit/1efefda623283d941705d8f6ad0e9cfe0ac76079 vim-patch:8.2.2007: test for insert mode in popup is not reliable Problem: Test for insert mode in popup is not reliable. Solution: Wait for the popup to disappear. (Ozaki Kiichi, closes vim/vim#7321) https://github.com/vim/vim/commit/17ab28daa060c3c263841329e74befb9c6e8b588 vim-patch:8.2.2008: MS-Windows GUI: handling channel messages lags Problem: MS-Windows GUI: handling channel messages lags. Solution: Reduce the wait time from 100 to 10 msec. (closes vim/vim#7097) https://github.com/vim/vim/commit/032f40afb88b24043f96655aa248267a4f54faa8 vim-patch:8.2.2009: MS-Windows: setting $LANG in gvimext only causes problems Problem: MS-Windows: setting $LANG in gvimext only causes problems. Solution: Do not set $LANG. (Ken Takata, closes vim/vim#7325) https://github.com/vim/vim/commit/382319211a96adce089673c80eda982cc5259d0d --- src/nvim/eval/funcs.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/nvim/eval/funcs.c b/src/nvim/eval/funcs.c index eee40965e0..62a8022734 100644 --- a/src/nvim/eval/funcs.c +++ b/src/nvim/eval/funcs.c @@ -2987,11 +2987,12 @@ static void f_getchar(typval_T *argvars, typval_T *rettv, FunPtr fptr) // illegal argument or getchar(0) and no char avail: return zero n = 0; } else { - // getchar(0) and char avail: return char + // getchar(0) and char avail() != NUL: get a character. + // Note that vpeekc_any() returns K_SPECIAL for K_IGNORE. n = safe_vgetc(); } - if (n == K_IGNORE) { + if (n == K_IGNORE || n == K_VER_SCROLLBAR || n == K_HOR_SCROLLBAR) { continue; } break;