From f2a1f894ba3af9299c9a1e770ef25247a6690637 Mon Sep 17 00:00:00 2001 From: Tim Rowley Date: Wed, 4 May 2016 10:40:10 -0600 Subject: [PATCH] swr: [rasterizer core] utility function for getenv Reviewed-by: Bruce Cherniak --- src/gallium/drivers/swr/rasterizer/core/utils.h | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/gallium/drivers/swr/rasterizer/core/utils.h b/src/gallium/drivers/swr/rasterizer/core/utils.h index e3c534dd851..1c4780a5276 100644 --- a/src/gallium/drivers/swr/rasterizer/core/utils.h +++ b/src/gallium/drivers/swr/rasterizer/core/utils.h @@ -866,3 +866,20 @@ struct TemplateArgUnroller } }; +////////////////////////////////////////////////////////////////////////// +/// Helper used to get an environment variable +////////////////////////////////////////////////////////////////////////// +static INLINE std::string GetEnv(const std::string& variableName) +{ + std::string output; +#if defined(_WIN32) + DWORD valueSize = GetEnvironmentVariableA(variableName.c_str(), nullptr, 0); + if (!valueSize) return output; + output.resize(valueSize - 1); // valueSize includes null, output.resize() does not + GetEnvironmentVariableA(variableName.c_str(), &output[0], valueSize); +#else + output = getenv(variableName.c_str()); +#endif + + return output; +} \ No newline at end of file -- 2.30.2