[Lldb-commits] [lldb] r123157 - /lldb/trunk/source/Target/UnixSignals.cpp
Greg Clayton
gclayton at apple.com
Sun Jan 9 19:47:25 PST 2011
Author: gclayton
Date: Sun Jan 9 21:47:25 2011
New Revision: 123157
URL: http://llvm.org/viewvc/llvm-project?rev=123157&view=rev
Log:
Change the default signal setting for SIBABRT to SUPPRESS the signal. Why?
When debugging, if an expression hits a SIGABRT, it the expression ends up
completing and stopping due the the "SIGABRT". Then the next thing that runs
(another expression, or continuing the program) ends up progating the SIGABRT
and causing the parent processes to die.
We should probably think of a different solution where we suppress any signal
that resulted due to an expression, or we modifyin the UnixSignals class to
contain a row for "suppress for expression".
So the settings for SIGABRT are: suppress = true, stop = true, and
notify = true.
Modified:
lldb/trunk/source/Target/UnixSignals.cpp
Modified: lldb/trunk/source/Target/UnixSignals.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Target/UnixSignals.cpp?rev=123157&r1=123156&r2=123157&view=diff
==============================================================================
--- lldb/trunk/source/Target/UnixSignals.cpp (original)
+++ lldb/trunk/source/Target/UnixSignals.cpp Sun Jan 9 21:47:25 2011
@@ -66,7 +66,7 @@
AddSignal (3, "SIGQUIT", "QUIT", false, true, true, "quit");
AddSignal (4, "SIGILL", "ILL", false, true, true, "illegal instruction");
AddSignal (5, "SIGTRAP", "TRAP", true, true, true, "trace trap (not reset when caught)");
- AddSignal (6, "SIGABRT", "ABRT", false, true, true, "abort()");
+ AddSignal (6, "SIGABRT", "ABRT", true, true, true, "abort()");
AddSignal (7, "SIGEMT", "EMT", false, true, true, "pollable event");
AddSignal (8, "SIGFPE", "FPE", false, true, true, "floating point exception");
AddSignal (9, "SIGKILL", "KILL", false, true, true, "kill");
More information about the lldb-commits
mailing list