|
|
|
@ -1008,7 +1008,7 @@ int start_subprocess(char *const command[], int *pid, int *infd, int *outfd)
|
|
|
|
int p1[2], p2[2];
|
|
|
|
int p1[2], p2[2];
|
|
|
|
|
|
|
|
|
|
|
|
if (!pid || !infd || !outfd)
|
|
|
|
if (!pid || !infd || !outfd)
|
|
|
|
return false;
|
|
|
|
return 0;
|
|
|
|
|
|
|
|
|
|
|
|
if (pipe(p1) == -1)
|
|
|
|
if (pipe(p1) == -1)
|
|
|
|
goto err_pipe1;
|
|
|
|
goto err_pipe1;
|
|
|
|
@ -1023,7 +1023,7 @@ int start_subprocess(char *const command[], int *pid, int *infd, int *outfd)
|
|
|
|
*outfd = p2[0];
|
|
|
|
*outfd = p2[0];
|
|
|
|
close(p1[0]);
|
|
|
|
close(p1[0]);
|
|
|
|
close(p2[1]);
|
|
|
|
close(p2[1]);
|
|
|
|
return true;
|
|
|
|
return 1;
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|
/* Child process. */
|
|
|
|
/* Child process. */
|
|
|
|
dup2(p1[0], 0);
|
|
|
|
dup2(p1[0], 0);
|
|
|
|
|