ERR: Some platforms define stdin, stdout, and stderr as macros. Renaming these symbols to StdIn, StdOut, and StdErr.

This commit is contained in:
Brad King 2003-12-03 13:37:21 -05:00
parent ad8bc4b1a4
commit cee49e74cf
1 changed files with 34 additions and 34 deletions

View File

@ -73,11 +73,11 @@ typedef struct timeval kwsysProcessTime;
typedef struct kwsysProcessCreateInformation_s typedef struct kwsysProcessCreateInformation_s
{ {
int stdin; int StdIn;
int stdout; int StdOut;
int stderr; int StdErr;
int term; int TermPipe;
int error[2]; int ErrorPipe[2];
} kwsysProcessCreateInformation; } kwsysProcessCreateInformation;
/*--------------------------------------------------------------------------*/ /*--------------------------------------------------------------------------*/
@ -423,11 +423,11 @@ void kwsysProcess_Execute(kwsysProcess* cp)
cp->PipeReadEnds[i] = p[0]; cp->PipeReadEnds[i] = p[0];
if(i == KWSYSPE_PIPE_STDERR) if(i == KWSYSPE_PIPE_STDERR)
{ {
si.stderr = p[1]; si.StdErr = p[1];
} }
else else
{ {
si.term = p[1]; si.TermPipe = p[1];
} }
/* Set close-on-exec flag on the pipe's ends. */ /* Set close-on-exec flag on the pipe's ends. */
@ -435,8 +435,8 @@ void kwsysProcess_Execute(kwsysProcess* cp)
(fcntl(p[1], F_SETFD, FD_CLOEXEC) < 0)) (fcntl(p[1], F_SETFD, FD_CLOEXEC) < 0))
{ {
kwsysProcessCleanup(cp, 1); kwsysProcessCleanup(cp, 1);
kwsysProcessCleanupDescriptor(&si.stderr); kwsysProcessCleanupDescriptor(&si.StdErr);
kwsysProcessCleanupDescriptor(&si.term); kwsysProcessCleanupDescriptor(&si.TermPipe);
return; return;
} }
} }
@ -460,13 +460,13 @@ void kwsysProcess_Execute(kwsysProcess* cp)
kwsysProcessCleanupDescriptor(&readEnd); kwsysProcessCleanupDescriptor(&readEnd);
if(i > 0) if(i > 0)
{ {
kwsysProcessCleanupDescriptor(&si.stdin); kwsysProcessCleanupDescriptor(&si.StdIn);
} }
kwsysProcessCleanupDescriptor(&si.stdout); kwsysProcessCleanupDescriptor(&si.StdOut);
kwsysProcessCleanupDescriptor(&si.stderr); kwsysProcessCleanupDescriptor(&si.StdErr);
kwsysProcessCleanupDescriptor(&si.term); kwsysProcessCleanupDescriptor(&si.TermPipe);
kwsysProcessCleanupDescriptor(&si.error[0]); kwsysProcessCleanupDescriptor(&si.ErrorPipe[0]);
kwsysProcessCleanupDescriptor(&si.error[1]); kwsysProcessCleanupDescriptor(&si.ErrorPipe[1]);
return; return;
} }
} }
@ -475,8 +475,8 @@ void kwsysProcess_Execute(kwsysProcess* cp)
} }
/* The parent process does not need the output pipe write ends. */ /* The parent process does not need the output pipe write ends. */
kwsysProcessCleanupDescriptor(&si.stderr); kwsysProcessCleanupDescriptor(&si.StdErr);
kwsysProcessCleanupDescriptor(&si.term); kwsysProcessCleanupDescriptor(&si.TermPipe);
/* All the pipes are now open. */ /* All the pipes are now open. */
cp->PipesLeft = KWSYSPE_PIPE_COUNT; cp->PipesLeft = KWSYSPE_PIPE_COUNT;
@ -933,12 +933,12 @@ int kwsysProcessCreate(kwsysProcess* cp, int index,
/* Setup the process's stdin. */ /* Setup the process's stdin. */
if(index > 0) if(index > 0)
{ {
si->stdin = *readEnd; si->StdIn = *readEnd;
*readEnd = 0; *readEnd = 0;
} }
else else
{ {
si->stdin = 0; si->StdIn = 0;
} }
/* Setup the process's stdout. */ /* Setup the process's stdout. */
@ -950,7 +950,7 @@ int kwsysProcessCreate(kwsysProcess* cp, int index,
return 0; return 0;
} }
*readEnd = p[0]; *readEnd = p[0];
si->stdout = p[1]; si->StdOut = p[1];
/* Set close-on-exec flag on the pipe's ends. */ /* Set close-on-exec flag on the pipe's ends. */
if((fcntl(p[0], F_SETFD, FD_CLOEXEC) < 0) || if((fcntl(p[0], F_SETFD, FD_CLOEXEC) < 0) ||
@ -961,13 +961,13 @@ int kwsysProcessCreate(kwsysProcess* cp, int index,
} }
/* Create the error reporting pipe. */ /* Create the error reporting pipe. */
if(pipe(si->error) < 0) if(pipe(si->ErrorPipe) < 0)
{ {
return 0; return 0;
} }
/* Set close-on-exec flag on the error pipe's write end. */ /* Set close-on-exec flag on the error pipe's write end. */
if(fcntl(si->error[1], F_SETFD, FD_CLOEXEC) < 0) if(fcntl(si->ErrorPipe[1], F_SETFD, FD_CLOEXEC) < 0)
{ {
return 0; return 0;
} }
@ -982,15 +982,15 @@ int kwsysProcessCreate(kwsysProcess* cp, int index,
if(cp->ForkPIDs[index] == 0) if(cp->ForkPIDs[index] == 0)
{ {
/* Close the read end of the error reporting pipe. */ /* Close the read end of the error reporting pipe. */
close(si->error[0]); close(si->ErrorPipe[0]);
/* Setup the stdin, stdout, and stderr pipes. */ /* Setup the stdin, stdout, and stderr pipes. */
if(index > 0) if(index > 0)
{ {
dup2(si->stdin, 0); dup2(si->StdIn, 0);
} }
dup2(si->stdout, 1); dup2(si->StdOut, 1);
dup2(si->stderr, 2); dup2(si->StdErr, 2);
/* Clear the close-on-exec flag for stdin, stdout, and stderr. /* Clear the close-on-exec flag for stdin, stdout, and stderr.
Also clear it for the termination pipe. All other pipe handles Also clear it for the termination pipe. All other pipe handles
@ -998,7 +998,7 @@ int kwsysProcessCreate(kwsysProcess* cp, int index,
fcntl(0, F_SETFD, 0); fcntl(0, F_SETFD, 0);
fcntl(1, F_SETFD, 0); fcntl(1, F_SETFD, 0);
fcntl(2, F_SETFD, 0); fcntl(2, F_SETFD, 0);
fcntl(si->term, F_SETFD, 0); fcntl(si->TermPipe, F_SETFD, 0);
/* Restore all default signal handlers. */ /* Restore all default signal handlers. */
kwsysProcessRestoreDefaultSignalHandlers(); kwsysProcessRestoreDefaultSignalHandlers();
@ -1013,7 +1013,7 @@ int kwsysProcessCreate(kwsysProcess* cp, int index,
if(r < 0) if(r < 0)
{ {
/* Failure. Report error to parent and terminate. */ /* Failure. Report error to parent and terminate. */
kwsysProcessChildErrorExit(si->error[1]); kwsysProcessChildErrorExit(si->ErrorPipe[1]);
} }
} }
@ -1021,11 +1021,11 @@ int kwsysProcessCreate(kwsysProcess* cp, int index,
execvp(cp->Commands[index][0], cp->Commands[index]); execvp(cp->Commands[index][0], cp->Commands[index]);
/* Failure. Report error to parent and terminate. */ /* Failure. Report error to parent and terminate. */
kwsysProcessChildErrorExit(si->error[1]); kwsysProcessChildErrorExit(si->ErrorPipe[1]);
} }
/* We are done with the error reporting pipe write end. */ /* We are done with the error reporting pipe write end. */
kwsysProcessCleanupDescriptor(&si->error[1]); kwsysProcessCleanupDescriptor(&si->ErrorPipe[1]);
/* Block until the child's exec call succeeds and closes the error /* Block until the child's exec call succeeds and closes the error
pipe or writes data to the pipe to report an error. */ pipe or writes data to the pipe to report an error. */
@ -1036,7 +1036,7 @@ int kwsysProcessCreate(kwsysProcess* cp, int index,
while(total < KWSYSPE_PIPE_BUFFER_SIZE && n > 0) while(total < KWSYSPE_PIPE_BUFFER_SIZE && n > 0)
{ {
/* Keep trying to read until the operation is not interrupted. */ /* Keep trying to read until the operation is not interrupted. */
while(((n = read(si->error[0], cp->ErrorMessage+total, while(((n = read(si->ErrorPipe[0], cp->ErrorMessage+total,
KWSYSPE_PIPE_BUFFER_SIZE-total)) < 0) && KWSYSPE_PIPE_BUFFER_SIZE-total)) < 0) &&
(errno == EINTR)); (errno == EINTR));
if(n > 0) if(n > 0)
@ -1046,7 +1046,7 @@ int kwsysProcessCreate(kwsysProcess* cp, int index,
} }
/* We are done with the error reporting pipe read end. */ /* We are done with the error reporting pipe read end. */
kwsysProcessCleanupDescriptor(&si->error[0]); kwsysProcessCleanupDescriptor(&si->ErrorPipe[0]);
if(total > 0) if(total > 0)
{ {
@ -1059,11 +1059,11 @@ int kwsysProcessCreate(kwsysProcess* cp, int index,
if(index > 0) if(index > 0)
{ {
/* The parent process does not need the input pipe read end. */ /* The parent process does not need the input pipe read end. */
kwsysProcessCleanupDescriptor(&si->stdin); kwsysProcessCleanupDescriptor(&si->StdIn);
} }
/* The parent process does not need the output pipe write ends. */ /* The parent process does not need the output pipe write ends. */
kwsysProcessCleanupDescriptor(&si->stdout); kwsysProcessCleanupDescriptor(&si->StdOut);
return 1; return 1;
} }