On Thu, May 15, 2014 at 09:42:27PM -0700, Thomas Hruska wrote:
> On 5/15/2014 9:26 PM, Thomas Hruska wrote:
> >Somewhere around line 4227 is this code:
> >
> > if (!CreateProcess(NULL, cmdLine, NULL, NULL, TRUE,
> >CREATE_SUSPENDED, NULL, NULL, &si, &pi))
> >
> >
> >Adding DETACHED_PROCESS should fix the problem of the OS spawning a
> >bunch of console windows when 'postgres.exe' is called directly without
> >an attached console:
> >
> >
> > if (!CreateProcess(NULL, cmdLine, NULL, NULL, TRUE,
> >CREATE_SUSPENDED | DETACHED_PROCESS, NULL, NULL, &si, &pi))
>
> Minor correction. Detect the lack of a console, THEN add DETACHED_PROCESS:
>
> if (!CreateProcess(NULL, cmdLine, NULL, NULL, TRUE,
> CREATE_SUSPENDED | (GetConsoleWindow() == NULL ? DETACHED_PROCESS :
> 0), NULL, NULL, &si, &pi))
>
> That should allow standard input/output handles to function as
> expected when there is a console.
Thomas, would you like to create a complete patch for this that we could
review?
--
Bruce Momjian <bruce@momjian.us> http://momjian.us
EnterpriseDB http://enterprisedb.com
+ Everyone has their own god. +