+/* $Id$
+
+This file is part of builder
+Copyright © 2006-2009 Mikko Rasa, Mikkosoft Productions
+Distributed under the LGPL
+*/
+
#include <iostream>
#include <sys/wait.h>
+#include <fcntl.h>
+#include <cstdlib>
+#include <cstring>
#include "misc.h"
using namespace std;
using namespace Msp;
-/**
-Runs a command and returns its output as a string. The exit status of the
-command is lost.
-*/
string run_command(const StringList &argv)
{
int pfd[2];
close(pfd[0]);
dup2(pfd[1], 1);
- dup2(pfd[1], 2);
+ close(pfd[1]);
+ int devnull=open("/dev/null", O_WRONLY);
+ dup2(devnull, 2);
+ close(devnull);
execvp(argv_[0], argv_);
::exit(1);