Make CreateProcess() flags depend on "noconsole"

On Windows, display the output of external commands (adb) when a console
is available.
This commit is contained in:
Romain Vimont 2018-05-28 22:26:32 +02:00
parent 6b4bbb1fb3
commit a63dd47f2d
2 changed files with 10 additions and 1 deletions

View file

@ -126,6 +126,9 @@ conf.set('SKIP_FRAMES', get_option('skip_frames'))
# enable High DPI support # enable High DPI support
conf.set('HIDPI_SUPPORT', get_option('hidpi_support')) conf.set('HIDPI_SUPPORT', get_option('hidpi_support'))
# disable console on Windows
conf.set('WINDOWS_NOCONSOLE', get_option('windows_noconsole'))
configure_file(configuration: conf, output: 'config.h') configure_file(configuration: conf, output: 'config.h')
src_dir = include_directories('src') src_dir = include_directories('src')

View file

@ -1,5 +1,6 @@
#include "command.h" #include "command.h"
#include "config.h"
#include "log.h" #include "log.h"
#include "strutil.h" #include "strutil.h"
@ -20,7 +21,12 @@ HANDLE cmd_execute(const char *path, const char *const argv[]) {
return NULL; return NULL;
} }
if (!CreateProcess(NULL, cmd, NULL, NULL, FALSE, CREATE_NO_WINDOW, NULL, NULL, &si, &pi)) { #ifdef WINDOWS_NOCONSOLE
int flags = CREATE_NO_WINDOW;
#else
int flags = 0;
#endif
if (!CreateProcess(NULL, cmd, NULL, NULL, FALSE, flags, NULL, NULL, &si, &pi)) {
return NULL; return NULL;
} }