From b72f23ce67bc30d3bedbeabcf0b6d9c1fbf2a64f Mon Sep 17 00:00:00 2001 From: Karen Arutyunov Date: Fri, 15 Jun 2018 12:18:52 +0300 Subject: Use portable environment variable manipulation functions --- build2/b.cxx | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) (limited to 'build2/b.cxx') diff --git a/build2/b.cxx b/build2/b.cxx index de985e8..cd738f2 100644 --- a/build2/b.cxx +++ b/build2/b.cxx @@ -8,8 +8,6 @@ # include #endif -#include // getenv() _putenv()(_WIN32) - #ifdef __GLIBCXX__ # include #endif @@ -144,15 +142,15 @@ main (int argc, char* argv[]) // #ifdef _WIN32 { - string mp ("PATH="); - if (const char* p = getenv ("PATH")) + string mp; + if (optional p = getenv ("PATH")) { - mp += p; + mp = move (*p); mp += ';'; } mp += "/bin"; - _putenv (mp.c_str ()); + setenv ("PATH", mp); } #endif @@ -465,11 +463,11 @@ main (int argc, char* argv[]) // if (verb >= 5) { - const char* p (getenv ("PATH")); + optional p (getenv ("PATH")); trace << "work: " << work; trace << "home: " << home; - trace << "path: " << (p != nullptr ? p : ""); + trace << "path: " << (p ? *p : ""); trace << "jobs: " << jobs; } -- cgit v1.1