Loading src/shell.cpp +0 −17 Changes for src/shell.cpp: 0 added lines, 17 removed lines. Original line number Diff line number Diff line Loading @@ -3018,10 +3018,6 @@ void fresh::Shell::runStageChild(const std::vector<std::string> &tokens,const Re const std::string &subshellBody, int pipeStdinFd,int pipeStdoutFd, const std::vector<int> &allPipeFds){ fprintf(stderr,"DEBUGPIPE CHILD pid=%d pipeStdinFd=%d pipeStdoutFd=%d subshell=%s tokens0=%s\n", (int)getpid(),pipeStdinFd,pipeStdoutFd,subshellBody.empty()?"no":"yes", tokens.empty()?"":tokens[0].c_str()); fflush(stderr); for(size_t k=0; k<allPipeFds.size(); ++k){ if(allPipeFds[k]!=pipeStdinFd && allPipeFds[k]!=pipeStdoutFd) close(allPipeFds[k]); Loading @@ -3030,8 +3026,6 @@ void fresh::Shell::runStageChild(const std::vector<std::string> &tokens,const Re if(pipeStdinFd>=0){ dup2(pipeStdinFd,0); close(pipeStdinFd); fprintf(stderr,"DEBUGPIPE CHILD pid=%d did dup2 stdin\n",(int)getpid()); fflush(stderr); } if(pipeStdoutFd>=0){ dup2(pipeStdoutFd,1); Loading Loading @@ -3165,8 +3159,6 @@ int fresh::Shell::runPipeline(const std::vector<std::vector<std::string> > &stag const std::vector<Redirection> &redirs, const std::vector<std::string> &subshellBodies){ size_t n=stages.size(); fprintf(stderr,"DEBUGPIPE pid=%d n=%zu stage0=%s\n",(int)getpid(),n,stages.empty()?"":stages[0].empty()?"":stages[0][0].c_str()); fflush(stderr); std::vector<int> pipefds((n>1) ? (n-1)*2 : 0); for(size_t i=0; i<pipefds.size()/2; ++i){ Loading @@ -3177,21 +3169,12 @@ int fresh::Shell::runPipeline(const std::vector<std::vector<std::string> > &stag return 1; } } fprintf(stderr,"DEBUGPIPE pid=%d pipefds=",(int)getpid()); for(size_t k=0;k<pipefds.size();++k) fprintf(stderr,"%d,",pipefds[k]); fprintf(stderr,"\n"); fflush(stderr); std::vector<pid_t> pids(n,-1); for(size_t i=0; i<n; ++i){ int stdinFd=(i>0) ? pipefds[(i-1)*2] : -1; int stdoutFd=(i<n-1) ? pipefds[i*2+1] : -1; fprintf(stderr,"DEBUGPIPE pid=%d stage=%zu stdinFd=%d stdoutFd=%d cmd0=%s subshell=%s\n", (int)getpid(),i,stdinFd,stdoutFd, stages[i].empty()?"":stages[i][0].c_str(), subshellBodies[i].empty()?"no":"yes"); fflush(stderr); // Must flush before every fork() here: fork() copies whatever is // still sitting unflushed in our own stdout/stderr buffers, and a Loading Loading
src/shell.cpp +0 −17 Changes for src/shell.cpp: 0 added lines, 17 removed lines. Original line number Diff line number Diff line Loading @@ -3018,10 +3018,6 @@ void fresh::Shell::runStageChild(const std::vector<std::string> &tokens,const Re const std::string &subshellBody, int pipeStdinFd,int pipeStdoutFd, const std::vector<int> &allPipeFds){ fprintf(stderr,"DEBUGPIPE CHILD pid=%d pipeStdinFd=%d pipeStdoutFd=%d subshell=%s tokens0=%s\n", (int)getpid(),pipeStdinFd,pipeStdoutFd,subshellBody.empty()?"no":"yes", tokens.empty()?"":tokens[0].c_str()); fflush(stderr); for(size_t k=0; k<allPipeFds.size(); ++k){ if(allPipeFds[k]!=pipeStdinFd && allPipeFds[k]!=pipeStdoutFd) close(allPipeFds[k]); Loading @@ -3030,8 +3026,6 @@ void fresh::Shell::runStageChild(const std::vector<std::string> &tokens,const Re if(pipeStdinFd>=0){ dup2(pipeStdinFd,0); close(pipeStdinFd); fprintf(stderr,"DEBUGPIPE CHILD pid=%d did dup2 stdin\n",(int)getpid()); fflush(stderr); } if(pipeStdoutFd>=0){ dup2(pipeStdoutFd,1); Loading Loading @@ -3165,8 +3159,6 @@ int fresh::Shell::runPipeline(const std::vector<std::vector<std::string> > &stag const std::vector<Redirection> &redirs, const std::vector<std::string> &subshellBodies){ size_t n=stages.size(); fprintf(stderr,"DEBUGPIPE pid=%d n=%zu stage0=%s\n",(int)getpid(),n,stages.empty()?"":stages[0].empty()?"":stages[0][0].c_str()); fflush(stderr); std::vector<int> pipefds((n>1) ? (n-1)*2 : 0); for(size_t i=0; i<pipefds.size()/2; ++i){ Loading @@ -3177,21 +3169,12 @@ int fresh::Shell::runPipeline(const std::vector<std::vector<std::string> > &stag return 1; } } fprintf(stderr,"DEBUGPIPE pid=%d pipefds=",(int)getpid()); for(size_t k=0;k<pipefds.size();++k) fprintf(stderr,"%d,",pipefds[k]); fprintf(stderr,"\n"); fflush(stderr); std::vector<pid_t> pids(n,-1); for(size_t i=0; i<n; ++i){ int stdinFd=(i>0) ? pipefds[(i-1)*2] : -1; int stdoutFd=(i<n-1) ? pipefds[i*2+1] : -1; fprintf(stderr,"DEBUGPIPE pid=%d stage=%zu stdinFd=%d stdoutFd=%d cmd0=%s subshell=%s\n", (int)getpid(),i,stdinFd,stdoutFd, stages[i].empty()?"":stages[i][0].c_str(), subshellBodies[i].empty()?"no":"yes"); fflush(stderr); // Must flush before every fork() here: fork() copies whatever is // still sitting unflushed in our own stdout/stderr buffers, and a Loading