24 lines
420 B
C
24 lines
420 B
C
#include <execinfo.h>
|
|
#include <stdio.h>
|
|
|
|
#define MAX_BACKTRACE_SYMBOLS 96
|
|
|
|
void uc_backtrace_fd(int fd)
|
|
{
|
|
void *buffer[MAX_BACKTRACE_SYMBOLS];
|
|
void **syms;
|
|
int ptrs;
|
|
|
|
ptrs = backtrace(buffer, MAX_BACKTRACE_SYMBOLS);
|
|
if (ptrs > 0) { //dont print out this function
|
|
ptrs--;
|
|
syms = &buffer[1];
|
|
} else {
|
|
syms = &buffer[0];
|
|
}
|
|
|
|
backtrace_symbols_fd(syms, ptrs, fd);
|
|
}
|
|
|
|
|