mirror of
https://github.com/vim/vim.git
synced 2025-09-26 04:04:07 -04:00
patch 8.1.2361: MS-Windows: test failures related to VIMDLL
Problem: MS-Windows: test failures related to VIMDLL. Solution: Adjust code and tests. (Ken Takata, closes #5283)
This commit is contained in:
@@ -3355,7 +3355,7 @@ f_has(typval_T *argvars, typval_T *rettv)
|
|||||||
#ifdef FEAT_SEARCHPATH
|
#ifdef FEAT_SEARCHPATH
|
||||||
"file_in_path",
|
"file_in_path",
|
||||||
#endif
|
#endif
|
||||||
#ifdef FEAT_FILTERPIPE
|
#if defined(FEAT_FILTERPIPE) && !defined(VIMDLL)
|
||||||
"filterpipe",
|
"filterpipe",
|
||||||
#endif
|
#endif
|
||||||
#ifdef FEAT_FIND_ID
|
#ifdef FEAT_FIND_ID
|
||||||
@@ -3818,6 +3818,10 @@ f_has(typval_T *argvars, typval_T *rettv)
|
|||||||
#ifdef FEAT_CLIPBOARD
|
#ifdef FEAT_CLIPBOARD
|
||||||
else if (STRICMP(name, "clipboard_working") == 0)
|
else if (STRICMP(name, "clipboard_working") == 0)
|
||||||
n = clip_star.available;
|
n = clip_star.available;
|
||||||
|
#endif
|
||||||
|
#ifdef VIMDLL
|
||||||
|
else if (STRICMP(name, "filterpipe") == 0)
|
||||||
|
n = gui.in_use || gui.starting;
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -1068,6 +1068,9 @@ do_filter(
|
|||||||
pos_T orig_start = curbuf->b_op_start;
|
pos_T orig_start = curbuf->b_op_start;
|
||||||
pos_T orig_end = curbuf->b_op_end;
|
pos_T orig_end = curbuf->b_op_end;
|
||||||
int save_lockmarks = cmdmod.lockmarks;
|
int save_lockmarks = cmdmod.lockmarks;
|
||||||
|
#ifdef FEAT_FILTERPIPE
|
||||||
|
int stmp = p_stmp;
|
||||||
|
#endif
|
||||||
|
|
||||||
if (*cmd == NUL) /* no filter command */
|
if (*cmd == NUL) /* no filter command */
|
||||||
return;
|
return;
|
||||||
@@ -1100,20 +1103,25 @@ do_filter(
|
|||||||
shell_flags |= SHELL_DOOUT;
|
shell_flags |= SHELL_DOOUT;
|
||||||
|
|
||||||
#ifdef FEAT_FILTERPIPE
|
#ifdef FEAT_FILTERPIPE
|
||||||
if (!do_in && do_out && !p_stmp)
|
# ifdef VIMDLL
|
||||||
|
if (!gui.in_use && !gui.starting)
|
||||||
|
stmp = 1; // Console mode doesn't support filterpipe.
|
||||||
|
# endif
|
||||||
|
|
||||||
|
if (!do_in && do_out && !stmp)
|
||||||
{
|
{
|
||||||
/* Use a pipe to fetch stdout of the command, do not use a temp file. */
|
/* Use a pipe to fetch stdout of the command, do not use a temp file. */
|
||||||
shell_flags |= SHELL_READ;
|
shell_flags |= SHELL_READ;
|
||||||
curwin->w_cursor.lnum = line2;
|
curwin->w_cursor.lnum = line2;
|
||||||
}
|
}
|
||||||
else if (do_in && !do_out && !p_stmp)
|
else if (do_in && !do_out && !stmp)
|
||||||
{
|
{
|
||||||
/* Use a pipe to write stdin of the command, do not use a temp file. */
|
/* Use a pipe to write stdin of the command, do not use a temp file. */
|
||||||
shell_flags |= SHELL_WRITE;
|
shell_flags |= SHELL_WRITE;
|
||||||
curbuf->b_op_start.lnum = line1;
|
curbuf->b_op_start.lnum = line1;
|
||||||
curbuf->b_op_end.lnum = line2;
|
curbuf->b_op_end.lnum = line2;
|
||||||
}
|
}
|
||||||
else if (do_in && do_out && !p_stmp)
|
else if (do_in && do_out && !stmp)
|
||||||
{
|
{
|
||||||
/* Use a pipe to write stdin and fetch stdout of the command, do not
|
/* Use a pipe to write stdin and fetch stdout of the command, do not
|
||||||
* use a temp file. */
|
* use a temp file. */
|
||||||
|
@@ -5746,6 +5746,14 @@ im_set_active(int active)
|
|||||||
HIMC hImc;
|
HIMC hImc;
|
||||||
static HIMC hImcOld = (HIMC)0;
|
static HIMC hImcOld = (HIMC)0;
|
||||||
|
|
||||||
|
# ifdef VIMDLL
|
||||||
|
if (!gui.in_use && !gui.starting)
|
||||||
|
{
|
||||||
|
mbyte_im_set_active(active);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
# endif
|
||||||
|
|
||||||
if (pImmGetContext) /* if NULL imm32.dll wasn't loaded (yet) */
|
if (pImmGetContext) /* if NULL imm32.dll wasn't loaded (yet) */
|
||||||
{
|
{
|
||||||
if (p_imdisable)
|
if (p_imdisable)
|
||||||
@@ -5815,6 +5823,11 @@ im_get_status(void)
|
|||||||
int status = 0;
|
int status = 0;
|
||||||
HIMC hImc;
|
HIMC hImc;
|
||||||
|
|
||||||
|
# ifdef VIMDLL
|
||||||
|
if (!gui.in_use && !gui.starting)
|
||||||
|
return mbyte_im_get_status();
|
||||||
|
# endif
|
||||||
|
|
||||||
if (pImmGetContext && (hImc = pImmGetContext(s_hwnd)) != (HIMC)0)
|
if (pImmGetContext && (hImc = pImmGetContext(s_hwnd)) != (HIMC)0)
|
||||||
{
|
{
|
||||||
status = pImmGetOpenStatus(hImc) ? 1 : 0;
|
status = pImmGetOpenStatus(hImc) ? 1 : 0;
|
||||||
|
15
src/mbyte.c
15
src/mbyte.c
@@ -4789,7 +4789,8 @@ iconv_end(void)
|
|||||||
# define USE_IMSTATUSFUNC (*p_imsf != NUL)
|
# define USE_IMSTATUSFUNC (*p_imsf != NUL)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(FEAT_EVAL) && (defined(FEAT_XIM) || defined(IME_WITHOUT_XIM))
|
#if defined(FEAT_EVAL) && \
|
||||||
|
(defined(FEAT_XIM) || defined(IME_WITHOUT_XIM) || defined(VIMDLL))
|
||||||
static void
|
static void
|
||||||
call_imactivatefunc(int active)
|
call_imactivatefunc(int active)
|
||||||
{
|
{
|
||||||
@@ -6454,11 +6455,15 @@ xim_get_status_area_height(void)
|
|||||||
|
|
||||||
#else /* !defined(FEAT_XIM) */
|
#else /* !defined(FEAT_XIM) */
|
||||||
|
|
||||||
# ifdef IME_WITHOUT_XIM
|
# if defined(IME_WITHOUT_XIM) || defined(VIMDLL)
|
||||||
static int im_was_set_active = FALSE;
|
static int im_was_set_active = FALSE;
|
||||||
|
|
||||||
int
|
int
|
||||||
|
# ifdef VIMDLL
|
||||||
|
mbyte_im_get_status(void)
|
||||||
|
# else
|
||||||
im_get_status(void)
|
im_get_status(void)
|
||||||
|
# endif
|
||||||
{
|
{
|
||||||
# if defined(FEAT_EVAL)
|
# if defined(FEAT_EVAL)
|
||||||
if (USE_IMSTATUSFUNC)
|
if (USE_IMSTATUSFUNC)
|
||||||
@@ -6468,7 +6473,11 @@ im_get_status(void)
|
|||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
# ifdef VIMDLL
|
||||||
|
mbyte_im_set_active(int active_arg)
|
||||||
|
# else
|
||||||
im_set_active(int active_arg)
|
im_set_active(int active_arg)
|
||||||
|
# endif
|
||||||
{
|
{
|
||||||
# if defined(FEAT_EVAL)
|
# if defined(FEAT_EVAL)
|
||||||
int active = !p_imdisable && active_arg;
|
int active = !p_imdisable && active_arg;
|
||||||
@@ -6481,7 +6490,7 @@ im_set_active(int active_arg)
|
|||||||
# endif
|
# endif
|
||||||
}
|
}
|
||||||
|
|
||||||
# ifdef FEAT_GUI
|
# if defined(FEAT_GUI) && !defined(VIMDLL)
|
||||||
void
|
void
|
||||||
im_set_position(int row UNUSED, int col UNUSED)
|
im_set_position(int row UNUSED, int col UNUSED)
|
||||||
{
|
{
|
||||||
|
@@ -685,7 +685,11 @@ add_menu_path(
|
|||||||
if ( addtearoff
|
if ( addtearoff
|
||||||
&& *next_name
|
&& *next_name
|
||||||
&& vim_strchr(p_go, GO_TEAROFF) != NULL
|
&& vim_strchr(p_go, GO_TEAROFF) != NULL
|
||||||
&& menu_is_menubar(name))
|
&& menu_is_menubar(name)
|
||||||
|
# ifdef VIMDLL
|
||||||
|
&& (gui.in_use || gui.starting)
|
||||||
|
# endif
|
||||||
|
)
|
||||||
{
|
{
|
||||||
char_u *tearpath;
|
char_u *tearpath;
|
||||||
|
|
||||||
|
@@ -177,6 +177,11 @@ void qsort(void *base, size_t elm_count, size_t elm_size, int (*cmp)(const void
|
|||||||
# include "mouse.pro"
|
# include "mouse.pro"
|
||||||
# include "move.pro"
|
# include "move.pro"
|
||||||
# include "mbyte.pro"
|
# include "mbyte.pro"
|
||||||
|
# ifdef VIMDLL
|
||||||
|
// Function name differs when VIMDLL is defined
|
||||||
|
int mbyte_im_get_status(void);
|
||||||
|
void mbyte_im_set_active(int active_arg);
|
||||||
|
# endif
|
||||||
# include "normal.pro"
|
# include "normal.pro"
|
||||||
# include "ops.pro"
|
# include "ops.pro"
|
||||||
# include "option.pro"
|
# include "option.pro"
|
||||||
|
@@ -519,7 +519,7 @@ func Test_termguicolors()
|
|||||||
if !exists('+termguicolors')
|
if !exists('+termguicolors')
|
||||||
return
|
return
|
||||||
endif
|
endif
|
||||||
if has('vtp') && !has('vcon')
|
if has('vtp') && !has('vcon') && !has('gui_running')
|
||||||
" Win32: 'guicolors' doesn't work without virtual console.
|
" Win32: 'guicolors' doesn't work without virtual console.
|
||||||
call assert_fails('set termguicolors', 'E954:')
|
call assert_fails('set termguicolors', 'E954:')
|
||||||
return
|
return
|
||||||
|
@@ -737,6 +737,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 */
|
||||||
|
/**/
|
||||||
|
2361,
|
||||||
/**/
|
/**/
|
||||||
2360,
|
2360,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user