diff options
Diffstat (limited to 'main/lxdm/lxdm-execinfo.patch')
-rw-r--r-- | main/lxdm/lxdm-execinfo.patch | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/main/lxdm/lxdm-execinfo.patch b/main/lxdm/lxdm-execinfo.patch new file mode 100644 index 0000000000..b81ef2fc84 --- /dev/null +++ b/main/lxdm/lxdm-execinfo.patch @@ -0,0 +1,47 @@ +--- lxdm-0.3.0/configure.ac ++++ lxdm-0.3.0.mod/configure.ac +@@ -23,7 +23,7 @@ + + # Checks for header files. + AC_PATH_X +-AC_CHECK_HEADERS([shadow.h stdlib.h string.h unistd.h]) ++AC_CHECK_HEADERS([shadow.h stdlib.h string.h unistd.h execinfo.h]) + + # Checks for typedefs, structures, and compiler characteristics. + AC_TYPE_PID_T +Only in lxdm-0.3.0: data/LoginReady +Only in lxdm-0.3.0: data/PostLogin +Only in lxdm-0.3.0: data/PostLogout +Only in lxdm-0.3.0: data/PreLogin +Only in lxdm-0.3.0: data/PreReboot +Only in lxdm-0.3.0: data/PreShutdown +--- lxdm-0.3.0/src/lxdm.c ++++ lxdm-0.3.0.mod/src/lxdm.c +@@ -51,7 +51,9 @@ + #include <sys/ioctl.h> + #include <sys/stat.h> + ++#ifdef HAVE_EXECINFO_H + #include <execinfo.h> ++#endif + + #include <utmp.h> + +@@ -1480,6 +1482,7 @@ + + static void log_sigsegv(void) + { ++#ifdef HAVE_EXECINFO_H + void *array[40]; + size_t size; + char **bt_strs; +@@ -1492,6 +1495,9 @@ + fprintf(stderr, "%s\n", bt_strs[i]); + + free(bt_strs); ++#else ++ fprintf(stderr, "backtrace is unavailable\n"); ++#endif + } + + static void sigsegv_handler(int sig) |