gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r31838 - gnunet/src/util


From: gnunet
Subject: [GNUnet-SVN] r31838 - gnunet/src/util
Date: Wed, 8 Jan 2014 15:14:52 +0100

Author: LRN
Date: 2014-01-08 15:14:52 +0100 (Wed, 08 Jan 2014)
New Revision: 31838

Modified:
   gnunet/src/util/os_priority.c
Log:
Fix W32 process spawning to use CREATE_NO_WINDOW only when there's no console

Modified: gnunet/src/util/os_priority.c
===================================================================
--- gnunet/src/util/os_priority.c       2014-01-08 14:14:49 UTC (rev 31837)
+++ gnunet/src/util/os_priority.c       2014-01-08 14:14:52 UTC (rev 31838)
@@ -753,6 +753,7 @@
   DWORD stdif, stdof, stdef;
   BOOL bresult;
   DWORD error_code;
+  DWORD create_no_window;
 
   if (GNUNET_SYSERR == GNUNET_OS_check_helper_binary (filename, GNUNET_NO, 
NULL))
     return NULL; /* not executable */
@@ -1051,8 +1052,17 @@
     return NULL;
   }
 
+  create_no_window = 0;
+  {
+    HANDLE console_input = CreateFile ("CONIN$", GENERIC_READ, FILE_SHARE_READ 
| FILE_SHARE_WRITE, NULL, OPEN_EXISTING, 0, NULL);
+    if (INVALID_HANDLE_VALUE == console_input)
+      create_no_window = CREATE_NO_WINDOW;
+    else
+      CloseHandle (console_input);
+  }
+
   bresult = CreateProcessW (wpath, wcmd, NULL, NULL, GNUNET_YES,
-       CREATE_SUSPENDED, env_block, NULL, &start, &proc);
+       create_no_window | CREATE_SUSPENDED, env_block, NULL, &start, &proc);
   error_code = GetLastError ();
 
   if ((NULL == pipe_stdin) && (stdih))




reply via email to

[Prev in Thread] Current Thread [Next in Thread]