Fix libunwind segfault when -p is passed before -k
* strace.c (init) [USE_LIBUNWIND]: Call unwind_tcb_init after unwind_init for all allocated tcb structures if stack trace is enabled. * unwind.c (unwind_tcb_init): Skip if tcb is already initialized. Co-authored-by: Dmitry V. Levin <ldv@altlinux.org>
This commit is contained in:
parent
9555f21588
commit
54c7792bfd
8
strace.c
8
strace.c
@ -1769,8 +1769,14 @@ init(int argc, char *argv[])
|
||||
}
|
||||
|
||||
#ifdef USE_LIBUNWIND
|
||||
if (stack_trace_enabled)
|
||||
if (stack_trace_enabled) {
|
||||
unsigned int tcbi;
|
||||
|
||||
unwind_init();
|
||||
for (tcbi = 0; tcbi < tcbtabsize; ++tcbi) {
|
||||
unwind_tcb_init(tcbtab[tcbi]);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
/* See if they want to run as another user. */
|
||||
|
Loading…
x
Reference in New Issue
Block a user