1
0
forked from aniani/vim

patch 8.1.1301: when compiled with VIMDLL some messages are not shown

Problem:    When compiled with VIMDLL some messages are not shown.
Solution:   Set/reset gui.in_use and gui.starting as needed. (Ken Takata,
            closes #4361)
This commit is contained in:
Bram Moolenaar 2019-05-08 22:28:46 +02:00
parent 2f10658b06
commit 0b75f7c97c
4 changed files with 18 additions and 2 deletions

View File

@ -4827,6 +4827,10 @@ ole_error(char *arg)
{
char buf[IOSIZE];
# ifdef VIMDLL
gui.in_use = mch_is_gui_executable();
# endif
/* Can't use emsg() here, we have not finished initialisation yet. */
vim_snprintf(buf, IOSIZE,
_("E243: Argument not supported: \"-%s\"; Use the OLE version."),

View File

@ -178,6 +178,8 @@ main
#ifdef VIMDLL
// Check if the current executable file is for the GUI subsystem.
gui.starting = mch_is_gui_executable();
#elif defined(FEAT_GUI_MSWIN)
gui.starting = TRUE;
#endif
#ifdef FEAT_CLIENTSERVER
@ -3242,6 +3244,14 @@ mainerr(
reset_signals(); /* kill us with CTRL-C here, if you like */
#endif
// If this is a Windows GUI executable, show an error dialog box.
#ifdef VIMDLL
gui.in_use = mch_is_gui_executable();
#endif
#ifdef FEAT_GUI_MSWIN
gui.starting = FALSE; // Needed to show as error.
#endif
init_longVersion();
mch_errmsg(longVersion);
mch_errmsg("\n");

View File

@ -2977,7 +2977,7 @@ mch_errmsg(char *str)
int len;
#endif
#if (defined(UNIX) || defined(FEAT_GUI)) && (!defined(ALWAYS_USE_GUI) || !defined(VIMDLL))
#if (defined(UNIX) || defined(FEAT_GUI)) && !defined(ALWAYS_USE_GUI) && !defined(VIMDLL)
/* On Unix use stderr if it's a tty.
* When not going to start the GUI also use stderr.
* On Mac, when started from Finder, stderr is the console. */
@ -3080,7 +3080,7 @@ mch_msg_c(char *str)
void
mch_msg(char *str)
{
#if (defined(UNIX) || defined(FEAT_GUI)) && (!defined(ALWAYS_USE_GUI) || !defined(VIMDLL))
#if (defined(UNIX) || defined(FEAT_GUI)) && !defined(ALWAYS_USE_GUI) && !defined(VIMDLL)
/* On Unix use stdout if we have a tty. This allows "vim -h | more" and
* uses mch_errmsg() when started from the desktop.
* When not going to start the GUI also use stdout.

View File

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