From 61301786966aea8fca685fc3a0e5b5ecb629f9d4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?D=C4=81vis=20Mos=C4=81ns?= <davispuh@gmail.com>
Date: Thu, 14 Jul 2016 05:17:00 +0300
Subject: [PATCH] SystemTools: Tweak GetEnv/PutEnv implementation layout

Revise code layout to make introduction of wide character APIs cleaner.

Change-Id: I22301f07eba1e13b954eb938da3305f269d8b754
---
 SystemTools.cxx | 13 +++++--------
 1 file changed, 5 insertions(+), 8 deletions(-)

diff --git a/SystemTools.cxx b/SystemTools.cxx
index 7fea79e..c6471c6 100644
--- a/SystemTools.cxx
+++ b/SystemTools.cxx
@@ -505,7 +505,9 @@ void SystemTools::GetPath(std::vector<std::string>& path, const char* env)
 
 const char* SystemTools::GetEnv(const char* key)
 {
-  return getenv(key);
+  const char *v = 0;
+  v = getenv(key);
+  return v;
 }
 
 const char* SystemTools::GetEnv(const std::string& key)
@@ -521,10 +523,7 @@ bool SystemTools::GetEnv(const char* key, std::string& result)
     result = v;
     return true;
     }
-  else
-    {
-    return false;
-    }
+  return false;
 }
 
 bool SystemTools::GetEnv(const std::string& key, std::string& result)
@@ -688,16 +687,14 @@ public:
     }
   bool Put(const char* env)
     {
-    Free oldEnv(this->Release(env));
-    static_cast<void>(oldEnv);
     char* newEnv = strdup(env);
+    Free oldEnv(this->Release(newEnv));
     this->insert(newEnv);
     return putenv(newEnv) == 0;
     }
   bool UnPut(const char* env)
     {
     Free oldEnv(this->Release(env));
-    static_cast<void>(oldEnv);
     return kwsysUnPutEnv(env) == 0;
     }
 };
-- 
GitLab