changeset 16531:5c6bd4431d98 v8.1.1269

patch 8.1.1269: MS-Windows GUI: multibyte chars with a 0x80 byte do not work commit https://github.com/vim/vim/commit/ed5ab2a95972b5ef588bdafab9f197e1dcf0c1df Author: Bram Moolenaar <Bram@vim.org> Date: Sat May 4 20:00:00 2019 +0200 patch 8.1.1269: MS-Windows GUI: multibyte chars with a 0x80 byte do not work Problem: MS-Windows GUI: multibyte chars with a 0x80 byte do not work when compiled with VIMDLL. Solution: Adjust the condition for fixing the input buffer. (Ken Takata, closes #4330)
author Bram Moolenaar <Bram@vim.org>
date Sat, 04 May 2019 20:15:04 +0200
parents 9b8ed9cc40db
children 582612b67818
files src/getchar.c src/version.c
diffstat 2 files changed, 9 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/src/getchar.c
+++ b/src/getchar.c
@@ -3095,7 +3095,7 @@ inchar(
 
 /*
  * Fix typed characters for use by vgetc() and check_termcode().
- * buf[] must have room to triple the number of bytes!
+ * "buf[]" must have room to triple the number of bytes!
  * Returns the new length.
  */
     int
@@ -3135,14 +3135,15 @@ fix_input_buffer(char_u *buf, int len)
 	else
 #endif
 	if (p[0] == NUL || (p[0] == K_SPECIAL
-		    /* timeout may generate K_CURSORHOLD */
+		    // timeout may generate K_CURSORHOLD
 		    && (i < 2 || p[1] != KS_EXTRA || p[2] != (int)KE_CURSORHOLD)
 #if defined(MSWIN) && (!defined(FEAT_GUI) || defined(VIMDLL))
+		    // Win32 console passes modifiers
+		    && (
 # ifdef VIMDLL
-		    && !gui.in_use
+			gui.in_use ||
 # endif
-		    /* Win32 console passes modifiers */
-		    && (i < 2 || p[1] != KS_MODIFIER)
+			(i < 2 || p[1] != KS_MODIFIER))
 #endif
 		    ))
 	{
@@ -3154,7 +3155,7 @@ fix_input_buffer(char_u *buf, int len)
 	    len += 2;
 	}
     }
-    *p = NUL;		/* add trailing NUL */
+    *p = NUL;		// add trailing NUL
     return len;
 }
 
--- a/src/version.c
+++ b/src/version.c
@@ -768,6 +768,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1269,
+/**/
     1268,
 /**/
     1267,