aboutsummaryrefslogtreecommitdiff
path: root/bpkg/archive
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2017-05-01 11:02:36 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2017-05-01 11:02:36 +0200
commit5fb0df6f63e02c141e8a0e5ad4543dea525df3fc (patch)
tree5063cce50ab142650ae8090f95bc5a4ed6f308bf /bpkg/archive
parent7263a091971f42a611f5b03239135e8c3ef9bb47 (diff)
Reimplement tar invocations to do manual decompression
This is needed to prevent tar from forking, which doesn't work reliably on MSYS2.
Diffstat (limited to 'bpkg/archive')
-rw-r--r--bpkg/archive6
1 files changed, 4 insertions, 2 deletions
diff --git a/bpkg/archive b/bpkg/archive
index 918734c..1f33538 100644
--- a/bpkg/archive
+++ b/bpkg/archive
@@ -20,10 +20,12 @@ namespace bpkg
package_dir (const path& archive);
// Start the process of extracting the specified file from the archive. If
- // error is false, then redirect STDERR to STDOUT (this can be used, for
+ // error is false, then redirect STDERR to /dev/null (this can be used, for
// example, to suppress diagnostics).
//
- butl::process
+ // Return a pair of processes that form a pipe. Wait on the second first.
+ //
+ pair<butl::process, butl::process>
start_extract (const common_options&,
const path& archive,
const path& file,