diff options
Diffstat (limited to 'src/stdlib/stdlib.c')
| -rw-r--r-- | src/stdlib/stdlib.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/stdlib/stdlib.c b/src/stdlib/stdlib.c index 53eeb1dc..4a1f7dd8 100644 --- a/src/stdlib/stdlib.c +++ b/src/stdlib/stdlib.c @@ -479,7 +479,7 @@ public void print_stack_trace(FILE *out, int start, int stop) char **strings = strings = backtrace_symbols(stack, size); for (int64_t i = start; i < size - stop; i++) { char *filename = strings[i]; - char *paren = strchrnul(strings[i], '('); + char *paren = strings[i] + strcspn(strings[i], "("); char *addr_end = paren + 1 + strcspn(paren + 1, ")"); ptrdiff_t offset = strtol(paren + 1, &addr_end, 16) - 1; const char *cmd = heap_strf("addr2line -e %.*s -is +0x%x", strcspn(filename, "("), filename, offset); |
