From fdd72db7512ecd2410e9ddcb144abea23d67b2c7 Mon Sep 17 00:00:00 2001 From: Karen Arutyunov Date: Fri, 16 Sep 2016 16:44:50 +0300 Subject: Audit all print_process()/process ctor for path_search() --- bpkg/checksum.cxx | 42 +++++++++++++++++++++++++++--------------- 1 file changed, 27 insertions(+), 15 deletions(-) (limited to 'bpkg/checksum.cxx') diff --git a/bpkg/checksum.cxx b/bpkg/checksum.cxx index 8940952..fc66ccb 100644 --- a/bpkg/checksum.cxx +++ b/bpkg/checksum.cxx @@ -28,12 +28,14 @@ namespace bpkg // const char* args[] = {prog.string ().c_str (), "-q", "-s", "", nullptr}; - if (verb >= 3) - print_process (args); - try { - process pr (args, 0, -1, 1); // Redirect STDOUT and STDERR to a pipe. + process_path pp (process::path_search (args[0])); + + if (verb >= 3) + print_process (args); + + process pr (pp, args, 0, -1, 1); // Redirect STDOUT and STDERR to a pipe. try { @@ -74,13 +76,15 @@ namespace bpkg args.push_back (nullptr); + process_path pp (process::path_search (args[0])); + if (verb >= 2) print_process (args); // Pipe both STDIN and STDOUT. Process exceptions must be handled by // the caller. // - return process (args.data (), -1, -1); + return process (pp, args.data (), -1, -1); } // sha256sum @@ -93,12 +97,14 @@ namespace bpkg // const char* args[] = {prog.string ().c_str (), "--version", nullptr}; - if (verb >= 3) - print_process (args); - try { - process pr (args, 0, -1); // Redirect STDOUT to a pipe. + process_path pp (process::path_search (args[0])); + + if (verb >= 3) + print_process (args); + + process pr (pp, args, 0, -1); // Redirect STDOUT to a pipe. try { @@ -136,13 +142,15 @@ namespace bpkg args.push_back (nullptr); + process_path pp (process::path_search (args[0])); + if (verb >= 2) print_process (args); // Pipe both STDIN and STDOUT. Process exceptions must be handled by // the caller. // - return process (args.data (), -1, -1); + return process (pp, args.data (), -1, -1); } // shasum @@ -155,12 +163,14 @@ namespace bpkg // const char* args[] = {prog.string ().c_str (), "--version", nullptr}; - if (verb >= 3) - print_process (args); - try { - process pr (args, 0, -1); // Redirect STDOUT to a pipe. + process_path pp (process::path_search (args[0])); + + if (verb >= 3) + print_process (args); + + process pr (pp, args, 0, -1); // Redirect STDOUT to a pipe. try { @@ -198,13 +208,15 @@ namespace bpkg args.push_back (nullptr); + process_path pp (process::path_search (args[0])); + if (verb >= 2) print_process (args); // Pipe both STDIN and STDOUT. Process exceptions must be handled by // the caller. // - return process (args.data (), -1, -1); + return process (pp, args.data (), -1, -1); } // The dispatcher. -- cgit v1.1