aboutsummaryrefslogtreecommitdiffhomepage
path: root/test/core/util/test_config.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/core/util/test_config.c')
-rw-r--r--test/core/util/test_config.c16
1 files changed, 10 insertions, 6 deletions
diff --git a/test/core/util/test_config.c b/test/core/util/test_config.c
index 6755d117cb..348b9229bd 100644
--- a/test/core/util/test_config.c
+++ b/test/core/util/test_config.c
@@ -123,13 +123,17 @@ static void crash_handler(int signum, siginfo_t *info, void *data) {
addrlen = backtrace(addrlist, GPR_ARRAY_SIZE(addrlist));
- symlist = backtrace_symbols(addrlist, addrlen);
- for (i = 0; i < addrlen; i++) {
- output_string(" ");
- output_string(symlist[i]);
- output_string("\n");
+ if (addrlen == 0) {
+ output_string(" no backtrace\n");
+ } else {
+ symlist = backtrace_symbols(addrlist, addrlen);
+ for (i = 0; i < addrlen; i++) {
+ output_string(" ");
+ output_string(symlist[i]);
+ output_string("\n");
+ }
+ free(symlist);
}
- free(symlist);
raise(signum);
}