| 121 | } |
| 122 | |
| 123 | void Unsetenv(const char * name) |
| 124 | { |
| 125 | if (!name || !*name) |
| 126 | { |
| 127 | return; |
| 128 | } |
| 129 | |
| 130 | #ifdef _WIN32 |
| 131 | |
| 132 | #ifdef UNICODE |
| 133 | // Note that the Windows _putenv_s() removes the env. variable if the value is empty. |
| 134 | _wputenv_s(Utf8ToUtf16(name).c_str(), L""); |
| 135 | #else |
| 136 | _putenv_s(name, ""); |
| 137 | #endif |
| 138 | |
| 139 | #else |
| 140 | ::unsetenv(name); |
| 141 | #endif |
| 142 | } |
| 143 | |
| 144 | bool isEnvPresent(const char * name) |
| 145 | { |