From: Mikko Rasa Date: Wed, 30 May 2012 19:31:44 +0000 (+0000) Subject: Remove the now-obsolete run_command function X-Git-Url: http://git.tdb.fi/?a=commitdiff_plain;ds=sidebyside;h=2ad39eaef684b00d48d302cd8852389252dab2bf;p=builder.git Remove the now-obsolete run_command function --- diff --git a/source/misc.cpp b/source/misc.cpp deleted file mode 100644 index c85f840..0000000 --- a/source/misc.cpp +++ /dev/null @@ -1,72 +0,0 @@ -#include -#include -#include -#include -#include -#include -#include "misc.h" - -using namespace std; -using namespace Msp; - -string run_command(const StringList &argv, int *status) -{ - int pfd[2]; - pipe(pfd); - - string result; - - pid_t pid = fork(); - if(pid==0) - { - char *argv_[argv.size()+1]; - - unsigned j = 0; - for(StringList::const_iterator i=argv.begin(); i!=argv.end(); ++i) - argv_[j++] = strdup(i->c_str()); - argv_[j] = 0; - - close(pfd[0]); - dup2(pfd[1], 1); - close(pfd[1]); - int devnull = open("/dev/null", O_WRONLY); - dup2(devnull, 2); - close(devnull); - - execvp(argv_[0], argv_); - ::exit(1); - } - else if(pid==-1) - IO::print(IO::cerr, "Failed to execute %s\n", argv.front()); - else - { - close(pfd[1]); - while(1) - { - char buf[1024]; - int len = read(pfd[0], buf, sizeof(buf)); - if(len<=0) - { - int s; - if(waitpid(pid, &s, WNOHANG)) - { - if(status) - { - if(WIFEXITED(s)) - *status = WEXITSTATUS(s); - else - *status = -1; - } - break; - } - } - else - result.append(buf, len); - } - close(pfd[0]); - } - - return result; -} - - diff --git a/source/misc.h b/source/misc.h index 0d6997c..e3d4be8 100644 --- a/source/misc.h +++ b/source/misc.h @@ -17,8 +17,4 @@ typedef std::list StringList; typedef std::list PathList; typedef std::map StringMap; -/** Runs a command and returns its output as a string. The exit status of the -command is returned in the second parameter if it is not null. */ -std::string run_command(const StringList &, int * =0); - #endif