stacktrace_test: avoid spoiling errno in the test signal handler.

PiperOrigin-RevId: 800031515
Change-Id: Ica41c41d176d2ea1ab148e656bf49921098a0411
This commit is contained in:
Abseil Team
2025-08-27 07:49:58 -07:00
committed by Copybara-Service
parent 5ad0bfb7ab
commit 72d59c9617
3 changed files with 4 additions and 0 deletions

View File

@@ -69,6 +69,7 @@ cc_test(
":stacktrace",
"//absl/base:config",
"//absl/base:core_headers",
"//absl/base:errno_saver",
"//absl/types:span",
"@googletest//:gtest",
"@googletest//:gtest_main",

View File

@@ -58,6 +58,7 @@ absl_cc_test(
absl::stacktrace
absl::config
absl::core_headers
absl::errno_saver
absl::span
GTest::gmock_main
)

View File

@@ -27,6 +27,7 @@
#include "gtest/gtest.h"
#include "absl/base/attributes.h"
#include "absl/base/config.h"
#include "absl/base/internal/errno_saver.h"
#include "absl/base/optimization.h"
#include "absl/types/span.h"
@@ -414,6 +415,7 @@ const void* g_return_address = nullptr;
bool g_sigusr2_raised = false;
void SigUsr2Handler(int, siginfo_t*, void* uc) {
absl::base_internal::ErrnoSaver errno_saver;
// Many platforms don't support this by default.
bool support_is_expected = false;
constexpr int kMaxStackDepth = 64;