X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;ds=sidebyside;f=source%2Fexternalaction.cpp;h=6989f69bbe017c113ad3aa7fc3b7a9d6cec7a9b4;hb=75bdcf13fbd285e2006337ec606ca28fa4ddae9e;hp=88c7e544e7907671daa82a6d8381f29f46257356;hpb=242c55b17e6608b29a77ca17a5b677e202a3ca90;p=builder.git diff --git a/source/externalaction.cpp b/source/externalaction.cpp index 88c7e54..6989f69 100644 --- a/source/externalaction.cpp +++ b/source/externalaction.cpp @@ -5,11 +5,12 @@ Copyright © 2006-2009 Mikko Rasa, Mikkosoft Productions Distributed under the LGPL */ -#include -#include #include #include +#include #include +#include +#include #include "builder.h" #include "externalaction.h" @@ -19,38 +20,30 @@ using namespace Msp; void ExternalAction::launch() { if(builder.get_verbose()>=2) - { - for(StringList::const_iterator i=argv.begin(); i!=argv.end(); ++i) - { - if(i!=argv.begin()) - cout<<' '; - cout<<*i; - } - cout<<'\n'; - } + IO::print("%s\n", join(argv.begin(), argv.end())); if(builder.get_dry_run()) - pid=-1; + pid = -1; else { - pid=fork(); + pid = fork(); if(pid==0) { char *argv_[argv.size()+1]; - unsigned j=0; + unsigned j = 0; for(StringList::iterator i=argv.begin(); i!=argv.end(); ++i) - argv_[j++]=strdup(i->c_str()); - argv_[j]=0; + argv_[j++] = strdup(i->c_str()); + argv_[j] = 0; if(!work_dir.empty()) FS::chdir(work_dir); execvp(argv_[0], argv_); - cout<<"Couldn't execute "<