From 26422af6088129b99864b75ed4ce5395aa578f2b Mon Sep 17 00:00:00 2001 From: Hisham Muhammad Date: Mon, 24 Nov 2014 18:55:49 -0200 Subject: Files moved and added for supporting separate platforms. --- linux/LinuxCRT.c | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 linux/LinuxCRT.c (limited to 'linux/LinuxCRT.c') diff --git a/linux/LinuxCRT.c b/linux/LinuxCRT.c new file mode 100644 index 00000000..e0a12821 --- /dev/null +++ b/linux/LinuxCRT.c @@ -0,0 +1,36 @@ +/* +htop - LinuxCRT.c +(C) 2014 Hisham H. Muhammad +Released under the GNU GPL, see the COPYING file +in the source distribution for its full text. +*/ + +#include "config.h" +#include "CRT.h" +#include +#include +#ifdef HAVE_EXECINFO_H +#include +#endif + +void CRT_handleSIGSEGV(int sgn) { + (void) sgn; + CRT_done(); + #ifdef __linux + fprintf(stderr, "\n\nhtop " VERSION " aborting. Please report bug at http://hisham.hm/htop\n"); + #ifdef HAVE_EXECINFO_H + size_t size = backtrace(backtraceArray, sizeof(backtraceArray) / sizeof(void *)); + fprintf(stderr, "\n Please include in your report the following backtrace: \n"); + backtrace_symbols_fd(backtraceArray, size, 2); + fprintf(stderr, "\nAdditionally, in order to make the above backtrace useful,"); + fprintf(stderr, "\nplease also run the following command to generate a disassembly of your binary:"); + fprintf(stderr, "\n\n objdump -d `which htop` > ~/htop.objdump"); + fprintf(stderr, "\n\nand then attach the file ~/htop.objdump to your bug report."); + fprintf(stderr, "\n\nThank you for helping to improve htop!\n\n"); + #endif + #else + fprintf(stderr, "\nUnfortunately, you seem to be using an unsupported platform!"); + fprintf(stderr, "\nPlease contact your platform package mantainer!\n\n"); + #endif + abort(); +} -- cgit v1.2.3