Commit 028bcb00 authored by Rémi Denis-Courmont's avatar Rémi Denis-Courmont

Add small backtrace

parent 2eb05547
...@@ -42,14 +42,27 @@ void vlc_enable_override (void) ...@@ -42,14 +42,27 @@ void vlc_enable_override (void)
#include <stdlib.h> #include <stdlib.h>
#include <dlfcn.h> #include <dlfcn.h>
#include <pthread.h> #include <pthread.h>
#ifdef HAVE_EXECINFO_H
# include <execinfo.h>
#endif
static void vlogbug (const char *level, const char *func, const char *fmt, static void vlogbug (const char *level, const char *func, const char *fmt,
va_list ap) va_list ap)
{ {
#ifdef HAVE_BACKTRACE
const size_t framec = 8;
void *framev[framec];
backtrace (framev, framec);
#endif
flockfile (stderr); flockfile (stderr);
fprintf (stderr, "%s: call to %s(", level, func); fprintf (stderr, "%s: call to %s(", level, func);
vfprintf (stderr, fmt, ap); vfprintf (stderr, fmt, ap);
fputs (")\n", stderr); fputs (")\n", stderr);
fflush (stderr);
#ifdef HAVE_BACKTRACE
backtrace_symbols_fd (framev + 2, framec - 2, fileno (stderr));
#endif
funlockfile (stderr); funlockfile (stderr);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment