aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBruce Hill <bruce@bruce-hill.com>2025-02-04 14:18:29 -0500
committerBruce Hill <bruce@bruce-hill.com>2025-02-04 14:18:29 -0500
commit58af4226f8898d6fcdbe66f05f71d80e10a2b82e (patch)
tree3c3b39273a4d79d08778aaa8d3d3b44c98265e56
parent32da3a322636ed5a7131200bd4dbf607a1a29d19 (diff)
Hide '_.' from stack backtrace
-rw-r--r--stdlib/stdlib.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/stdlib/stdlib.c b/stdlib/stdlib.c
index bab97900..21102136 100644
--- a/stdlib/stdlib.c
+++ b/stdlib/stdlib.c
@@ -392,7 +392,7 @@ void print_stack_trace(FILE *out, int start, int stop)
char **strings = strings = backtrace_symbols(array, size);
for (int64_t i = start; i < size - stop; i++) {
char *filename = strings[i];
- const char *cmd = heap_strf("addr2line -e %.*s -fisp | sed 's/\\$/./g;s/ at /() at /' >&2", strcspn(filename, "("), filename);
+ const char *cmd = heap_strf("addr2line -e %.*s -fisp | sed 's/^_\\$//;s/\\$/./g;s/ at /() at /' >&2", strcspn(filename, "("), filename);
FILE *fp = popen(cmd, "w");
if (fp) {
char *paren = strchrnul(strings[i], '(');