BUG: Do not close stdout/stderr pipes in parent if they are shared.

This commit is contained in:
Brad King
2005-04-21 16:05:09 -04:00
parent 3f224b7558
commit 8567e7d0bc
2 changed files with 13 additions and 4 deletions

View File

@@ -1160,7 +1160,7 @@ void kwsysProcess_Execute(kwsysProcess* cp)
{
kwsysProcessCleanupHandle(&si.StartupInfo.hStdOutput);
}
if(si.StartupInfo.hStdOutput != GetStdHandle(STD_ERROR_HANDLE))
if(si.StartupInfo.hStdError != GetStdHandle(STD_ERROR_HANDLE))
{
kwsysProcessCleanupHandle(&si.StartupInfo.hStdError);
}
@@ -1176,7 +1176,10 @@ void kwsysProcess_Execute(kwsysProcess* cp)
/* Close the inherited handles to the stderr pipe shared by all
processes in the pipeline. */
kwsysProcessCleanupHandle(&si.StartupInfo.hStdError);
if(si.StartupInfo.hStdError != GetStdHandle(STD_ERROR_HANDLE))
{
kwsysProcessCleanupHandle(&si.StartupInfo.hStdError);
}
/* Restore the working directory. */
if(cp->RealWorkingDirectory)