diff --git a/src/os_win32.c b/src/os_win32.c
index fe729d4..c0d6ad7 100644
--- a/src/os_win32.c
+++ b/src/os_win32.c
@@ -3299,14 +3299,17 @@
     int
 mch_can_exe(char_u *name, char_u **path, int use_path)
 {
-    char_u	buf[_MAX_PATH];
+    // WinNT and later can use _MAX_PATH wide characters for a pathname, which
+    // means that the maximum pathname is _MAX_PATH * 3 bytes when 'enc' is
+    // UTF-8.
+    char_u	buf[_MAX_PATH * 3];
     int		len = (int)STRLEN(name);
     char_u	*p, *saved;
 
-    if (len >= _MAX_PATH)	/* safety check */
+    if (len >= sizeof(buf))	// safety check
 	return FALSE;
 
-    /* Ty using the name directly when a Unix-shell like 'shell'. */
+    // Try using the name directly when a Unix-shell like 'shell'.
     if (strstr((char *)gettail(p_sh), "sh") != NULL)
 	if (executable_exists((char *)name, path, use_path))
 	    return TRUE;
@@ -3339,7 +3342,7 @@
     }
     vim_free(saved);
 
-    vim_strncpy(buf, name, _MAX_PATH - 1);
+    vim_strncpy(buf, name, sizeof(buf) - 1);
     p = mch_getenv("PATHEXT");
     if (p == NULL)
 	p = (char_u *)".com;.exe;.bat;.cmd";
@@ -3354,7 +3357,7 @@
 		++p;
 	}
 	else
-	    copy_option_part(&p, buf + len, _MAX_PATH - len, ";");
+	    copy_option_part(&p, buf + len, sizeof(buf) - len, ";");
 	if (executable_exists((char *)buf, path, use_path))
 	    return TRUE;
     }
diff --git a/src/testdir/test_functions.vim b/src/testdir/test_functions.vim
index 63f477d..e273e8a 100644
--- a/src/testdir/test_functions.vim
+++ b/src/testdir/test_functions.vim
@@ -944,6 +944,17 @@
   endif
 endfunc
 
+func Test_executable_longname()
+  if !has('win32')
+    return
+  endif
+
+  let fname = 'X' . repeat('あ', 200) . '.bat'
+  call writefile([], fname)
+  call assert_equal(1, executable(fname))
+  call delete(fname)
+endfunc
+
 func Test_hostname()
   let hostname_vim = hostname()
   if has('unix')
diff --git a/src/version.c b/src/version.c
index 9ba9e92..3e675fc 100644
--- a/src/version.c
+++ b/src/version.c
@@ -772,6 +772,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1095,
+/**/
     1094,
 /**/
     1093,
