mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-06-16 08:58:30 +02:00
swr/rast: do not crash on NULL strings returned by getenv
The current convenience function GetEnv feeds the results of getenv
directly into std::string(). That is a bad idea, since the variable
may be unset, thus we feed NULL into the C++ construct.
The latter of which is not allowed and leads to a crash.
v2: Better variable name, implicit char* -> std::string conversion (Eric)
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=101832
Fixes: a25093de71 ("swr/rast: Implement JIT shader caching to disk")
Cc: Tim Rowley <timothy.o.rowley@intel.com>
Cc: Laurent Carlier <lordheavym@gmail.com>
Cc: Bernhard Rosenkraenzer <bero@lindev.ch>
[Emil Velikov: make an actual commit from the misc diff]
Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com> (v1)
Reviewed-by: Laurent Carlier <lordheavym@gmail.com> (v1)
This commit is contained in:
parent
16ac70bdcf
commit
21e271024d
1 changed files with 2 additions and 1 deletions
|
|
@ -365,7 +365,8 @@ static INLINE std::string GetEnv(const std::string& variableName)
|
|||
output.resize(valueSize - 1); // valueSize includes null, output.resize() does not
|
||||
GetEnvironmentVariableA(variableName.c_str(), &output[0], valueSize);
|
||||
#else
|
||||
output = getenv(variableName.c_str());
|
||||
char *env = getenv(variableName.c_str());
|
||||
output = env ? env : "";
|
||||
#endif
|
||||
|
||||
return output;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue