From 96ccab40f71a97474ba62e50e90fe5d343bfb13e Mon Sep 17 00:00:00 2001 From: Nicholas O'Connor Date: Wed, 5 Jul 2017 14:19:39 -0700 Subject: [PATCH] launch::popen respects dry run flag (#27) --- src/launch/launch.cpp | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/src/launch/launch.cpp b/src/launch/launch.cpp index c17f809..345f4a2 100644 --- a/src/launch/launch.cpp +++ b/src/launch/launch.cpp @@ -6,6 +6,7 @@ #include #include "subprocess.hpp" +#include "cellar.hpp" #include "bottles.hpp" #include "launch.hpp" #include "internal/launch.hpp" @@ -48,12 +49,14 @@ void cellar::launch::popen(string argv) { void cellar::launch::popen(vector argv) { output::statement("launching program: " + boost::algorithm::join(argv, " "), true); - string exec = argv[0]; - vector subargv; - for (int curarg = 1; curarg < argv.size(); curarg++) { - subargv.push_back(argv[curarg]); + if (!dryrun) { + string exec = argv[0]; + vector subargv; + for (int curarg = 1; curarg < argv.size(); curarg++) { + subargv.push_back(argv[curarg]); + } + auto subproc = subprocess::popen(exec, subargv); + cout << subproc.stdout().rdbuf(); + cerr << subproc.stderr().rdbuf(); } - auto subproc = subprocess::popen(exec, subargv); - cout << subproc.stdout().rdbuf(); - cerr << subproc.stderr().rdbuf(); }