0
0
mirror of https://github.com/vim/vim.git synced 2025-09-27 04:14:06 -04:00

patch 8.1.0929: no error when requesting ConPTY but it's not available

Problem:    No error when requesting ConPTY but it's not available.
Solution:   Add an error message. (Hirohito Higashi, closes #3967)
This commit is contained in:
Bram Moolenaar
2019-02-16 13:35:13 +01:00
parent d634024b90
commit 5acd987258
3 changed files with 15 additions and 14 deletions

View File

@@ -413,13 +413,13 @@ Just put the files somewhere in your PATH. You can set the 'winptydll' option
to point to the right file, if needed. If you have both the 32-bit and 64-bit
version, rename to winpty32.dll and winpty64.dll to match the way Vim was
build.
*ConPTY*
*ConPTY* *E982*
On more recent versions of MS-Windows 10 (beginning with the "October 2018
Update"), winpty is no longer required. On those versions, |:terminal| will use
Windows' built-in support for hosting terminal applications, "ConPTY". When
ConPTY is in use, there may be rendering artifacts regarding ambiguous-width
characters. If you encounter any such issues, set 'termwintype' to "winpty"
(which you then must have instlled).
characters. If you encounter any such issues, install "winpty". Until the
ConPTY problems have been fixed "winpty" will be preferred.
Environment variables are used to pass information to the running job:
VIM_SERVERNAME v:servername

View File

@@ -5620,10 +5620,8 @@ void (WINAPI *pDeleteProcThreadAttributeList)(LPPROC_THREAD_ATTRIBUTE_LIST);
static int
dyn_conpty_init(int verbose)
{
static BOOL handled = FALSE;
static int result;
HMODULE hKerneldll;
int i;
static HMODULE hKerneldll = NULL;
int i;
static struct
{
char *name;
@@ -5642,16 +5640,17 @@ dyn_conpty_init(int verbose)
{NULL, NULL}
};
if (handled)
return result;
if (!has_conpty_working())
{
handled = TRUE;
result = FAIL;
if (verbose)
emsg(_("E982: ConPTY is not available"));
return FAIL;
}
// No need to initialize twice.
if (hKerneldll)
return OK;
hKerneldll = vimLoadLib("kernel32.dll");
for (i = 0; conpty_entry[i].name != NULL
&& conpty_entry[i].ptr != NULL; ++i)
@@ -5661,12 +5660,11 @@ dyn_conpty_init(int verbose)
{
if (verbose)
semsg(_(e_loadfunc), conpty_entry[i].name);
hKerneldll = NULL;
return FAIL;
}
}
handled = TRUE;
result = OK;
return OK;
}
@@ -6015,6 +6013,7 @@ dyn_winpty_init(int verbose)
{
if (verbose)
semsg(_(e_loadfunc), winpty_entry[i].name);
hWinPtyDLL = NULL;
return FAIL;
}
}

View File

@@ -783,6 +783,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
929,
/**/
928,
/**/