blob: d142819ffb6df7185b21f3c7540d497a061b9497 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
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/angle/third_party/vulkan-validation-layers/src/loader/loader.c
+++ ./third_party/angle/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.")
--- ./third_party/angle/third_party/vulkan-validation-layers/BUILD.gn.orig
+++ ./third_party/angle/third_party/vulkan-validation-layers/BUILD.gn
@@ -264,8 +264,7 @@
cflags = [ "/wd4201" ]
}
if (is_linux) {
- # assume secure_getenv() is available
- defines += [ "HAVE_SECURE_GETENV" ]
+ defines += [ "HAVE_GETAUXVAL" ]
}
}
|