# At a local mysql-5.1-bugteam repository of davi
2742 Davi Arnaut 2008-12-19
Bug#41612: resolve_stack_dump does not decode 5.1 stack trace
resolve_stack_dump is not able to decode a stack trace produced
by glibc's backtrace() functions. The problem is that the stack
trace addresses are printed between brackets and the utility is
not able to ignore the brackets.
The solution is to modify resolve_stack_dump so it can recognize
stack trace addresses surrounded by brackets. e.g. [0xdeadbeef].
modified:
extra/resolve_stack_dump.c
per-file messages:
extra/resolve_stack_dump.c
Skip to after a bracket if one is present in the input.
=== modified file 'extra/resolve_stack_dump.c'
--- a/extra/resolve_stack_dump.c 2007-05-10 09:59:39 +0000
+++ b/extra/resolve_stack_dump.c 2008-12-19 10:47:28 +0000
@@ -290,7 +290,8 @@ static void do_resolve()
char buf[1024], *p;
while (fgets(buf, sizeof(buf), fp_dump))
{
- p = buf;
+ /* skip bracket */
+ p= (p= strchr(buf, '[')) ? p+1 : buf;
/* skip space */
while (my_isspace(&my_charset_latin1,*p))
++p;
| Thread |
|---|
| • bzr commit into mysql-5.1-bugteam branch (davi:2742) Bug#41612 | Davi Arnaut | 19 Dec |