mirror of
https://github.com/vim/vim.git
synced 2025-07-26 11:04:33 -04:00
patch 8.2.4294: MS-Windows: #ifdefs for Cygwin are too complicated
Problem: MS-Windows: #ifdefs for Cygwin are too complicated. Solution: Simplify the conditions. (Ken Takata, closes #9693)
This commit is contained in:
parent
7676c15879
commit
972db23279
@ -5196,7 +5196,7 @@ f_has(typval_T *argvars, typval_T *rettv)
|
|||||||
#endif
|
#endif
|
||||||
},
|
},
|
||||||
{"win32unix",
|
{"win32unix",
|
||||||
#if defined(UNIX) && defined(__CYGWIN__)
|
#ifdef WIN32UNIX
|
||||||
1
|
1
|
||||||
#else
|
#else
|
||||||
0
|
0
|
||||||
|
@ -11,11 +11,9 @@
|
|||||||
#include "vim.h"
|
#include "vim.h"
|
||||||
|
|
||||||
#ifdef __CYGWIN__
|
#ifdef __CYGWIN__
|
||||||
# ifndef MSWIN
|
# include <cygwin/version.h>
|
||||||
# include <cygwin/version.h>
|
# include <sys/cygwin.h> // for cygwin_conv_to_posix_path() and/or
|
||||||
# include <sys/cygwin.h> // for cygwin_conv_to_posix_path() and/or
|
|
||||||
// cygwin_conv_path()
|
// cygwin_conv_path()
|
||||||
# endif
|
|
||||||
# include <limits.h>
|
# include <limits.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -2570,7 +2568,7 @@ scripterror:
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
#if defined(__CYGWIN32__) && !defined(MSWIN)
|
#ifdef __CYGWIN32__
|
||||||
/*
|
/*
|
||||||
* If vim is invoked by non-Cygwin tools, convert away any
|
* If vim is invoked by non-Cygwin tools, convert away any
|
||||||
* DOS paths, so things like .swp files are created correctly.
|
* DOS paths, so things like .swp files are created correctly.
|
||||||
|
@ -44,15 +44,13 @@ static int selinux_enabled = -1;
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef __CYGWIN__
|
#ifdef __CYGWIN__
|
||||||
# ifndef MSWIN
|
# include <cygwin/version.h>
|
||||||
# include <cygwin/version.h>
|
# include <sys/cygwin.h> // for cygwin_conv_to_posix_path() and/or
|
||||||
# include <sys/cygwin.h> // for cygwin_conv_to_posix_path() and/or
|
|
||||||
// for cygwin_conv_path()
|
// for cygwin_conv_path()
|
||||||
# ifdef FEAT_CYGWIN_WIN32_CLIPBOARD
|
# ifdef FEAT_CYGWIN_WIN32_CLIPBOARD
|
||||||
# define WIN32_LEAN_AND_MEAN
|
# define WIN32_LEAN_AND_MEAN
|
||||||
# include <windows.h>
|
# include <windows.h>
|
||||||
# include "winclip.pro"
|
# include "winclip.pro"
|
||||||
# endif
|
|
||||||
# endif
|
# endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -241,12 +241,6 @@ static char_u *exe_path = NULL;
|
|||||||
|
|
||||||
static BOOL win8_or_later = FALSE;
|
static BOOL win8_or_later = FALSE;
|
||||||
|
|
||||||
#if defined(__GNUC__) && !defined(__MINGW32__) && !defined(__CYGWIN__)
|
|
||||||
# define UChar UnicodeChar
|
|
||||||
#else
|
|
||||||
# define UChar uChar.UnicodeChar
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if !defined(FEAT_GUI_MSWIN) || defined(VIMDLL)
|
#if !defined(FEAT_GUI_MSWIN) || defined(VIMDLL)
|
||||||
// Dynamic loading for portability
|
// Dynamic loading for portability
|
||||||
typedef struct _DYN_CONSOLE_SCREEN_BUFFER_INFOEX
|
typedef struct _DYN_CONSOLE_SCREEN_BUFFER_INFOEX
|
||||||
@ -306,7 +300,7 @@ is_ambiwidth_event(
|
|||||||
&& ir->Event.KeyEvent.wRepeatCount == 1
|
&& ir->Event.KeyEvent.wRepeatCount == 1
|
||||||
&& ir->Event.KeyEvent.wVirtualKeyCode == 0x12
|
&& ir->Event.KeyEvent.wVirtualKeyCode == 0x12
|
||||||
&& ir->Event.KeyEvent.wVirtualScanCode == 0x38
|
&& ir->Event.KeyEvent.wVirtualScanCode == 0x38
|
||||||
&& ir->Event.KeyEvent.UChar == 0
|
&& ir->Event.KeyEvent.uChar.UnicodeChar == 0
|
||||||
&& ir->Event.KeyEvent.dwControlKeyState == 2;
|
&& ir->Event.KeyEvent.dwControlKeyState == 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -317,7 +311,8 @@ make_ambiwidth_event(
|
|||||||
{
|
{
|
||||||
down->Event.KeyEvent.wVirtualKeyCode = 0;
|
down->Event.KeyEvent.wVirtualKeyCode = 0;
|
||||||
down->Event.KeyEvent.wVirtualScanCode = 0;
|
down->Event.KeyEvent.wVirtualScanCode = 0;
|
||||||
down->Event.KeyEvent.UChar = up->Event.KeyEvent.UChar;
|
down->Event.KeyEvent.uChar.UnicodeChar
|
||||||
|
= up->Event.KeyEvent.uChar.UnicodeChar;
|
||||||
down->Event.KeyEvent.dwControlKeyState = 0;
|
down->Event.KeyEvent.dwControlKeyState = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1005,12 +1000,12 @@ win32_kbd_patch_key(
|
|||||||
|
|
||||||
if (s_iIsDead == 2)
|
if (s_iIsDead == 2)
|
||||||
{
|
{
|
||||||
pker->UChar = (WCHAR) awAnsiCode[1];
|
pker->uChar.UnicodeChar = (WCHAR) awAnsiCode[1];
|
||||||
s_iIsDead = 0;
|
s_iIsDead = 0;
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pker->UChar != 0)
|
if (pker->uChar.UnicodeChar != 0)
|
||||||
return 1;
|
return 1;
|
||||||
|
|
||||||
CLEAR_FIELD(abKeystate);
|
CLEAR_FIELD(abKeystate);
|
||||||
@ -1033,7 +1028,7 @@ win32_kbd_patch_key(
|
|||||||
abKeystate, awAnsiCode, 2, 0);
|
abKeystate, awAnsiCode, 2, 0);
|
||||||
|
|
||||||
if (s_iIsDead > 0)
|
if (s_iIsDead > 0)
|
||||||
pker->UChar = (WCHAR) awAnsiCode[0];
|
pker->uChar.UnicodeChar = (WCHAR) awAnsiCode[0];
|
||||||
|
|
||||||
return s_iIsDead;
|
return s_iIsDead;
|
||||||
}
|
}
|
||||||
@ -1075,7 +1070,8 @@ decode_key_event(
|
|||||||
}
|
}
|
||||||
|
|
||||||
// special cases
|
// special cases
|
||||||
if ((nModifs & CTRL) != 0 && (nModifs & ~CTRL) == 0 && pker->UChar == NUL)
|
if ((nModifs & CTRL) != 0 && (nModifs & ~CTRL) == 0
|
||||||
|
&& pker->uChar.UnicodeChar == NUL)
|
||||||
{
|
{
|
||||||
// Ctrl-6 is Ctrl-^
|
// Ctrl-6 is Ctrl-^
|
||||||
if (pker->wVirtualKeyCode == '6')
|
if (pker->wVirtualKeyCode == '6')
|
||||||
@ -1137,7 +1133,7 @@ decode_key_event(
|
|||||||
*pch = NUL;
|
*pch = NUL;
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
*pch = (i > 0) ? pker->UChar : NUL;
|
*pch = (i > 0) ? pker->uChar.UnicodeChar : NUL;
|
||||||
|
|
||||||
if (pmodifiers != NULL)
|
if (pmodifiers != NULL)
|
||||||
{
|
{
|
||||||
@ -1683,7 +1679,7 @@ WaitForChar(long msec, int ignore_input)
|
|||||||
# ifdef FEAT_MBYTE_IME
|
# ifdef FEAT_MBYTE_IME
|
||||||
// Windows IME sends two '\n's with only one 'ENTER'. First:
|
// Windows IME sends two '\n's with only one 'ENTER'. First:
|
||||||
// wVirtualKeyCode == 13. second: wVirtualKeyCode == 0
|
// wVirtualKeyCode == 13. second: wVirtualKeyCode == 0
|
||||||
if (ir.Event.KeyEvent.UChar == 0
|
if (ir.Event.KeyEvent.uChar.UnicodeChar == 0
|
||||||
&& ir.Event.KeyEvent.wVirtualKeyCode == 13)
|
&& ir.Event.KeyEvent.wVirtualKeyCode == 13)
|
||||||
{
|
{
|
||||||
read_console_input(g_hConIn, &ir, 1, &cRecords);
|
read_console_input(g_hConIn, &ir, 1, &cRecords);
|
||||||
|
@ -11,11 +11,9 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#include "os_dos.h" // common MS-DOS and Win32 stuff
|
#include "os_dos.h" // common MS-DOS and Win32 stuff
|
||||||
#ifndef __CYGWIN__
|
|
||||||
// cproto fails on missing include files
|
// cproto fails on missing include files
|
||||||
# ifndef PROTO
|
#ifndef PROTO
|
||||||
# include <direct.h> // for _mkdir()
|
# include <direct.h> // for _mkdir()
|
||||||
# endif
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define BINARY_FILE_IO
|
#define BINARY_FILE_IO
|
||||||
|
@ -746,6 +746,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
4294,
|
||||||
/**/
|
/**/
|
||||||
4293,
|
4293,
|
||||||
/**/
|
/**/
|
||||||
|
Loading…
x
Reference in New Issue
Block a user