aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoseph Hunkeler <jhunkeler@gmail.com>2019-05-23 07:45:04 -0400
committerJoseph Hunkeler <jhunkeler@gmail.com>2019-05-23 07:45:04 -0400
commite14c1ec09938fded86c568033ec58888dd93f271 (patch)
tree55d0f271a74c9e3300e640210975e46866ce6f1e
parentf767fcc4ca230243487e734ec7652643f31a45c5 (diff)
downloaddm-e14c1ec09938fded86c568033ec58888dd93f271.tar.gz
Disable buffering entirely
-rw-r--r--source/app.d4
-rw-r--r--source/conda.d6
2 files changed, 7 insertions, 3 deletions
diff --git a/source/app.d b/source/app.d
index 3ae9f54..eb7938f 100644
--- a/source/app.d
+++ b/source/app.d
@@ -18,6 +18,10 @@ int main(string[] args) {
string mergefile;
string base_spec;
+ // disable buffering
+ stdout.setvbuf(0, _IONBF);
+ stderr.setvbuf(0, _IONBF);
+
try {
auto optargs = getopt(
args,
diff --git a/source/conda.d b/source/conda.d
index 1bd6581..2f447bd 100644
--- a/source/conda.d
+++ b/source/conda.d
@@ -241,9 +241,9 @@ class Conda {
int sh(string command) {
writeln("Running: " ~ command);
- auto proc = executeShell(command, env=this.env);
- writeln(proc.output);
- return proc.status;
+ auto proc = spawnShell(command, env=this.env);
+ scope(exit) wait(proc);
+ return wait(proc);
}
auto sh_block(string command) {