/[make]/make/w32/subproc/sub_proc.c
ViewVC logotype

Diff of /make/w32/subproc/sub_proc.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.10 by psmith, Sat Feb 26 01:41:49 2005 UTC revision 1.11 by psmith, Mon Jun 27 15:40:56 2005 UTC
# Line 536  process_begin( Line 536  process_begin(
536          /* Close the halves of the pipes we don't need */          /* Close the halves of the pipes we don't need */
537          if (pproc->sv_stdin) {          if (pproc->sv_stdin) {
538                  CloseHandle((HANDLE)pproc->sv_stdin[1]);                  CloseHandle((HANDLE)pproc->sv_stdin[1]);
539                  (HANDLE)pproc->sv_stdin[1] = 0;                  pproc->sv_stdin[1] = 0;
540          }          }
541          if (pproc->sv_stdout) {          if (pproc->sv_stdout) {
542                  CloseHandle((HANDLE)pproc->sv_stdout[1]);                  CloseHandle((HANDLE)pproc->sv_stdout[1]);
543                  (HANDLE)pproc->sv_stdout[1] = 0;                  pproc->sv_stdout[1] = 0;
544          }          }
545          if (pproc->sv_stderr) {          if (pproc->sv_stderr) {
546                  CloseHandle((HANDLE)pproc->sv_stderr[1]);                  CloseHandle((HANDLE)pproc->sv_stderr[1]);
547                  (HANDLE)pproc->sv_stderr[1] = 0;                  pproc->sv_stderr[1] = 0;
548          }          }
549    
550          free( command_line );          free( command_line );
# Line 657  process_pipe_io( Line 657  process_pipe_io(
657          sub_process *pproc = (sub_process *)proc;          sub_process *pproc = (sub_process *)proc;
658          bool_t stdin_eof = FALSE, stdout_eof = FALSE, stderr_eof = FALSE;          bool_t stdin_eof = FALSE, stdout_eof = FALSE, stderr_eof = FALSE;
659          HANDLE childhand = (HANDLE) pproc->pid;          HANDLE childhand = (HANDLE) pproc->pid;
660          HANDLE tStdin, tStdout, tStderr;          HANDLE tStdin = NULL, tStdout = NULL, tStderr = NULL;
661          DWORD dwStdin, dwStdout, dwStderr;          DWORD dwStdin, dwStdout, dwStderr;
662          HANDLE wait_list[4];          HANDLE wait_list[4];
663          DWORD wait_count;          DWORD wait_count;
# Line 674  process_pipe_io( Line 674  process_pipe_io(
674          if (!pproc->inp) {          if (!pproc->inp) {
675                  stdin_eof = TRUE;                  stdin_eof = TRUE;
676                  CloseHandle((HANDLE)pproc->sv_stdin[0]);                  CloseHandle((HANDLE)pproc->sv_stdin[0]);
677                  (HANDLE)pproc->sv_stdin[0] = 0;                  pproc->sv_stdin[0] = 0;
678          } else {          } else {
679                  tStdin = (HANDLE) _beginthreadex( 0, 1024,                  tStdin = (HANDLE) _beginthreadex( 0, 1024,
680                          (unsigned (__stdcall *) (void *))proc_stdin_thread, pproc, 0,                          (unsigned (__stdcall *) (void *))proc_stdin_thread, pproc, 0,
# Line 739  process_pipe_io( Line 739  process_pipe_io(
739    
740                  if (ready_hand == tStdin) {                  if (ready_hand == tStdin) {
741                          CloseHandle((HANDLE)pproc->sv_stdin[0]);                          CloseHandle((HANDLE)pproc->sv_stdin[0]);
742                          (HANDLE)pproc->sv_stdin[0] = 0;                          pproc->sv_stdin[0] = 0;
743                          CloseHandle(tStdin);                          CloseHandle(tStdin);
744                          tStdin = 0;                          tStdin = 0;
745                          stdin_eof = TRUE;                          stdin_eof = TRUE;
# Line 747  process_pipe_io( Line 747  process_pipe_io(
747                  } else if (ready_hand == tStdout) {                  } else if (ready_hand == tStdout) {
748    
749                          CloseHandle((HANDLE)pproc->sv_stdout[0]);                          CloseHandle((HANDLE)pproc->sv_stdout[0]);
750                          (HANDLE)pproc->sv_stdout[0] = 0;                          pproc->sv_stdout[0] = 0;
751                          CloseHandle(tStdout);                          CloseHandle(tStdout);
752                          tStdout = 0;                          tStdout = 0;
753                          stdout_eof = TRUE;                          stdout_eof = TRUE;
# Line 755  process_pipe_io( Line 755  process_pipe_io(
755                  } else if (ready_hand == tStderr) {                  } else if (ready_hand == tStderr) {
756    
757                          CloseHandle((HANDLE)pproc->sv_stderr[0]);                          CloseHandle((HANDLE)pproc->sv_stderr[0]);
758                          (HANDLE)pproc->sv_stderr[0] = 0;                          pproc->sv_stderr[0] = 0;
759                          CloseHandle(tStderr);                          CloseHandle(tStderr);
760                          tStderr = 0;                          tStderr = 0;
761                          stderr_eof = TRUE;                          stderr_eof = TRUE;

Legend:
Removed from v.1.10  
changed lines
  Added in v.1.11

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26