summaryrefslogtreecommitdiffstats
path: root/debuggerd
diff options
context:
space:
mode:
authorElliott Hughes <enh@google.com>2012-12-10 11:43:29 -0800
committerAndroid Git Automerger <android-git-automerger@android.com>2012-12-10 11:43:29 -0800
commit6dc5128a81ca57fad797e0385522238688a978df (patch)
tree4f7639c76a5d1a188cbb5fa993429bde13d17e87 /debuggerd
parent5b322b857d95d1367818dac79066460a4bd9077a (diff)
parent435c223d483c5e408fdbd7b6177e881ae445a24b (diff)
downloadsystem_core-6dc5128a81ca57fad797e0385522238688a978df.zip
system_core-6dc5128a81ca57fad797e0385522238688a978df.tar.gz
system_core-6dc5128a81ca57fad797e0385522238688a978df.tar.bz2
am 435c223d: am 5144fa28: Merge "Add missing signal codes to get_sigcode."
* commit '435c223d483c5e408fdbd7b6177e881ae445a24b': Add missing signal codes to get_sigcode.
Diffstat (limited to 'debuggerd')
-rw-r--r--debuggerd/tombstone.c25
1 files changed, 25 insertions, 0 deletions
diff --git a/debuggerd/tombstone.c b/debuggerd/tombstone.c
index 5f2db43..98016c3 100644
--- a/debuggerd/tombstone.c
+++ b/debuggerd/tombstone.c
@@ -84,6 +84,7 @@ static const char *get_signame(int sig)
static const char *get_sigcode(int signo, int code)
{
+ // Try the signal-specific codes...
switch (signo) {
case SIGILL:
switch (code) {
@@ -122,7 +123,31 @@ static const char *get_sigcode(int signo, int code)
case SEGV_ACCERR: return "SEGV_ACCERR";
}
break;
+ case SIGTRAP:
+ switch (code) {
+ case TRAP_BRKPT: return "TRAP_BRKPT";
+ case TRAP_TRACE: return "TRAP_TRACE";
+ }
+ break;
+ }
+ // Then the other codes...
+ switch (code) {
+ case SI_USER: return "SI_USER";
+#if defined(SI_KERNEL)
+ case SI_KERNEL: return "SI_KERNEL";
+#endif
+ case SI_QUEUE: return "SI_QUEUE";
+ case SI_TIMER: return "SI_TIMER";
+ case SI_MESGQ: return "SI_MESGQ";
+ case SI_ASYNCIO: return "SI_ASYNCIO";
+#if defined(SI_SIGIO)
+ case SI_SIGIO: return "SI_SIGIO";
+#endif
+#if defined(SI_TKILL)
+ case SI_TKILL: return "SI_TKILL";
+#endif
}
+ // Then give up...
return "?";
}