diff options
author | Denys Vlasenko <vda.linux@googlemail.com> | 2010-02-26 17:05:28 +0100 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2010-02-26 17:05:28 +0100 |
commit | 5d5bccdbc8e6375cd02444a278136a55ec254c25 (patch) | |
tree | 27b17f6180911df66c3db04d666da26f1c0b77fa /lib | |
parent | 9279f0740a07192eac61f9e51a5e6d078bc4e7b5 (diff) | |
download | abrt-5d5bccdbc8e6375cd02444a278136a55ec254c25.tar.gz abrt-5d5bccdbc8e6375cd02444a278136a55ec254c25.tar.xz abrt-5d5bccdbc8e6375cd02444a278136a55ec254c25.zip |
ccpp analyser: add registers and disasm to gdb commands (bz#568686)
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'lib')
-rw-r--r-- | lib/Plugins/CCpp.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/lib/Plugins/CCpp.cpp b/lib/Plugins/CCpp.cpp index f72ebbae..d2bbf3c5 100644 --- a/lib/Plugins/CCpp.cpp +++ b/lib/Plugins/CCpp.cpp @@ -288,7 +288,7 @@ static void GetBacktrace(const char *pDebugDumpDir, unsetenv("TERM"); putenv((char*)"TERM=dumb"); - char *args[17]; + char *args[21]; args[0] = (char*)"gdb"; args[1] = (char*)"-batch"; @@ -341,12 +341,16 @@ static void GetBacktrace(const char *pDebugDumpDir, /*args[9] = ... see below */ args[10] = (char*)"-ex"; args[11] = (char*)"info sharedlib"; - /* glibc's abort() stores its message in this variable */ + /* glibc's abort() stores its message in __abort_msg variable */ args[12] = (char*)"-ex"; args[13] = (char*)"print (char*)__abort_msg"; args[14] = (char*)"-ex"; args[15] = (char*)"print (char*)__glib_assert_msg"; - args[16] = NULL; + args[16] = (char*)"-ex"; + args[17] = (char*)"info registers"; + args[18] = (char*)"-ex"; + args[19] = (char*)"disassemble"; + args[20] = NULL; /* Get the backtrace, but try to cap its size */ /* Limit bt depth. With no limit, gdb sometimes OOMs the machine */ |