From b43e28aef0764be86bed5f48c734361957f2cbb1 Mon Sep 17 00:00:00 2001 From: Daniel Santos Date: Wed, 19 Apr 2017 11:06:02 -0500 Subject: [PATCH] strace: Fix "over-optimization" flaw in strace. Recent versions of gcc are optimizing away the TLS buffer allocated in main, so we need to tell gcc that it's really used. RtlSecureZeroMemory accomplishes this while also inlining the memset. Signed-off-by: Daniel Santos --- winsup/utils/strace.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/winsup/utils/strace.cc b/winsup/utils/strace.cc index beab67b90..ae62cdc5f 100644 --- a/winsup/utils/strace.cc +++ b/winsup/utils/strace.cc @@ -1191,7 +1191,7 @@ main (int argc, char **argv) registry setting to 0x100000 (TOP_DOWN). */ char buf[CYGTLS_PADSIZE]; - memset (buf, 0, sizeof (buf)); + RtlSecureZeroMemory (buf, sizeof (buf)); exit (main2 (argc, argv)); }