Refactor crash handler message to avoid embedded directive

CRT.c:821:2: error: embedding a directive within macro arguments has undefined behavior [-Werror,-Wembedded-directive]
#ifdef HAVE_EXECINFO_H
 ^
CRT.c:823:2: error: embedding a directive within macro arguments has undefined behavior [-Werror,-Wembedded-directive]
#endif
 ^
CRT.c:858:2: error: embedding a directive within macro arguments has undefined behavior [-Werror,-Wembedded-directive]
#ifdef HTOP_DARWIN
 ^
CRT.c:862:2: error: embedding a directive within macro arguments has undefined behavior [-Werror,-Wembedded-directive]
#endif
 ^

CRT.c:864:2: error: embedding a directive within macro arguments has undefined behavior [-Werror,-Wembedded-directive]
#ifdef HTOP_DARWIN
 ^
CRT.c:868:2: error: embedding a directive within macro arguments has undefined behavior [-Werror,-Wembedded-directive]
#endif
 ^
This commit is contained in:
Christian Göttsche 2021-01-08 13:51:21 +01:00
parent de645ea16c
commit 2d2a2df6f2
1 changed files with 11 additions and 3 deletions

14
CRT.c
View File

@ -818,9 +818,13 @@ void CRT_handleSIGSEGV(int signal) {
"- Your OS and kernel version (uname -a)\n"
"- Your distribution and release (lsb_release -a)\n"
"- Likely steps to reproduce (How did it happened?)\n"
);
#ifdef HAVE_EXECINFO_H
"- Backtrace of the issue (see below)\n"
fprintf(stderr, "- Backtrace of the issue (see below)\n");
#endif
fprintf(stderr,
"\n"
);
@ -855,11 +859,15 @@ void CRT_handleSIGSEGV(int signal) {
"you should provide a disassembly of your binary.\n"
"This can usually be done by running the following command:\n"
"\n"
);
#ifdef HTOP_DARWIN
" otool -tvV `which htop` > ~/htop.otool\n"
fprintf(stderr, " otool -tvV `which htop` > ~/htop.otool\n");
#else
" objdump -d -S -w `which htop` > ~/htop.objdump\n"
fprintf(stderr, " objdump -d -S -w `which htop` > ~/htop.objdump\n");
#endif
fprintf(stderr,
"\n"
"Please include the generated file in your report.\n"
"\n"