diff options
Diffstat (limited to 'community/chromium/secure_getenv.patch')
-rw-r--r-- | community/chromium/secure_getenv.patch | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/community/chromium/secure_getenv.patch b/community/chromium/secure_getenv.patch new file mode 100644 index 0000000000..b28b77ef79 --- /dev/null +++ b/community/chromium/secure_getenv.patch @@ -0,0 +1,38 @@ +diff --git a/third_party/angle/src/vulkan_support/BUILD.gn b/third_party/angle/src/vulkan_support/BUILD.gn +index 51c8c10..fb70649 100644 +--- third_party/angle/src/vulkan_support/BUILD.gn ++++ third_party/angle/src/vulkan_support/BUILD.gn +@@ -204,8 +204,8 @@ config("vulkan_loader_config") { + cflags = [ "/wd4201" ] + } + if (is_linux) { +- # assume secure_getenv() is available +- defines += [ "HAVE_SECURE_GETENV" ] ++ # assume getauxval() is available ++ defines += [ "HAVE_GETAUXVAL" ] + } + } + +diff --git a/third_party/vulkan-validation-layers/src/loader/loader.c b/third_party/vulkan-validation-layers/src/loader/loader.c +index facddc1..b6a8ee9 100644 +--- third_party/vulkan-validation-layers/src/loader/loader.c ++++ third_party/vulkan-validation-layers/src/loader/loader.c +@@ -31,6 +31,9 @@ + #include <stdbool.h> + #include <string.h> + #include <stddef.h> ++#if defined(HAVE_GETAUXVAL) ++#include <sys/auxv.h> ++#endif + + #include <sys/types.h> + #if defined(_WIN32) +@@ -218,6 +221,8 @@ static inline char *loader_secure_getenv(const char *name, const struct loader_i + return secure_getenv(name); + #elif defined(HAVE___SECURE_GETENV) + return __secure_getenv(name); ++#elif defined(HAVE_GETAUXVAL) ++ return getauxval(AT_SECURE) ? NULL : getenv(name); + #else + #pragma message("Warning: Falling back to non-secure getenv for environmental lookups! Consider" \ + " updating to a different libc.") |