diff options
Diffstat (limited to 'libc/debug/tst-backtrace5.c')
-rw-r--r-- | libc/debug/tst-backtrace5.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/libc/debug/tst-backtrace5.c b/libc/debug/tst-backtrace5.c index 22c67c4df..c4bb90eb0 100644 --- a/libc/debug/tst-backtrace5.c +++ b/libc/debug/tst-backtrace5.c @@ -82,12 +82,17 @@ handle_signal (int signum) return; } /* Do not check name for signal trampoline. */ - if (strstr (symbols[2], "read") == NULL) + i = 2; + if (strstr (symbols[i++], "read") == NULL) { - FAIL (); - return; + /* Perhaps symbols[2] is __kernel_vsyscall? */ + if (strstr (symbols[i++], "read") == NULL) + { + FAIL (); + return; + } } - for (i = 3; i < n - 1; i++) + for (; i < n - 1; i++) if (strstr (symbols[i], "fn") == NULL) { FAIL (); |