mirror of
https://github.com/vim/vim.git
synced 2025-09-27 04:14:06 -04:00
patch 9.0.2054: win32: iscygpty needs update
Problem: win32: iscygpty needs update Solution: Update iscygpty to the latest version, make use iswascii() API function Import the latest version from https://github.com/k-takata/ptycheck. This addresses #13332 for iscygpty() closes: #13392 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Ken Takata <kentkt@csc.jp>
This commit is contained in:
committed by
Christian Brabandt
parent
d5dc58aeed
commit
ac709e2fc0
@@ -2,7 +2,7 @@
|
||||
* iscygpty.c -- part of ptycheck
|
||||
* https://github.com/k-takata/ptycheck
|
||||
*
|
||||
* Copyright (c) 2015-2017 K.Takata
|
||||
* Copyright (c) 2015-2023 K.Takata
|
||||
*
|
||||
* You can redistribute it and/or modify it under the terms of either
|
||||
* the MIT license (as described below) or the Vim license.
|
||||
@@ -116,7 +116,7 @@ int is_cygpty(int fd)
|
||||
return 0;
|
||||
#else
|
||||
HANDLE h;
|
||||
int size = sizeof(FILE_NAME_INFO) + sizeof(WCHAR) * (MAX_PATH - 1);
|
||||
const int size = sizeof(FILE_NAME_INFO) + sizeof(WCHAR) * (MAX_PATH - 1);
|
||||
FILE_NAME_INFO *nameinfo;
|
||||
WCHAR *p = NULL;
|
||||
|
||||
@@ -135,7 +135,7 @@ int is_cygpty(int fd)
|
||||
return 0;
|
||||
}
|
||||
// Check the name of the pipe:
|
||||
// '\{cygwin,msys}-XXXXXXXXXXXXXXXX-ptyN-{from,to}-master'
|
||||
// "\\{cygwin,msys}-XXXXXXXXXXXXXXXX-ptyN-{from,to}-master"
|
||||
if (pGetFileInformationByHandleEx(h, FileNameInfo, nameinfo, size)) {
|
||||
nameinfo->FileName[nameinfo->FileNameLength / sizeof(WCHAR)] = L'\0';
|
||||
p = nameinfo->FileName;
|
||||
@@ -147,7 +147,8 @@ int is_cygpty(int fd)
|
||||
p = NULL;
|
||||
}
|
||||
if (p != NULL) {
|
||||
while (*p && isxdigit(*p)) // Skip 16-digit hexadecimal.
|
||||
// Skip 16-digit hexadecimal.
|
||||
while (*p && iswascii(*p) && isxdigit(*p))
|
||||
++p;
|
||||
if (is_wprefix(p, L"-pty")) {
|
||||
p += 4;
|
||||
@@ -156,7 +157,8 @@ int is_cygpty(int fd)
|
||||
}
|
||||
}
|
||||
if (p != NULL) {
|
||||
while (*p && isdigit(*p)) // Skip pty number.
|
||||
// Skip pty number.
|
||||
while (*p && iswascii(*p) && isdigit(*p))
|
||||
++p;
|
||||
if (is_wprefix(p, L"-from-master")) {
|
||||
//p += 12;
|
||||
|
@@ -704,6 +704,8 @@ static char *(features[]) =
|
||||
|
||||
static int included_patches[] =
|
||||
{ /* Add new patch number below this line */
|
||||
/**/
|
||||
2054,
|
||||
/**/
|
||||
2053,
|
||||
/**/
|
||||
|
Reference in New Issue
Block a user