This revision was automatically updated to reflect the committed changes. Closed by commit rL265958: [Driver] Fix a segfault in signal handlers (authored by labath).
Changed prior to commit: http://reviews.llvm.org/D18965?vs=53239&id=53265#toc Repository: rL LLVM http://reviews.llvm.org/D18965 Files: lldb/trunk/tools/driver/Driver.cpp Index: lldb/trunk/tools/driver/Driver.cpp =================================================================== --- lldb/trunk/tools/driver/Driver.cpp +++ lldb/trunk/tools/driver/Driver.cpp @@ -1283,16 +1283,20 @@ void sigtstp_handler (int signo) { - g_driver->GetDebugger().SaveInputTerminalState(); + if (g_driver) + g_driver->GetDebugger().SaveInputTerminalState(); + signal (signo, SIG_DFL); kill (getpid(), signo); signal (signo, sigtstp_handler); } void sigcont_handler (int signo) { - g_driver->GetDebugger().RestoreInputTerminalState(); + if (g_driver) + g_driver->GetDebugger().RestoreInputTerminalState(); + signal (signo, SIG_DFL); kill (getpid(), signo); signal (signo, sigcont_handler);
Index: lldb/trunk/tools/driver/Driver.cpp =================================================================== --- lldb/trunk/tools/driver/Driver.cpp +++ lldb/trunk/tools/driver/Driver.cpp @@ -1283,16 +1283,20 @@ void sigtstp_handler (int signo) { - g_driver->GetDebugger().SaveInputTerminalState(); + if (g_driver) + g_driver->GetDebugger().SaveInputTerminalState(); + signal (signo, SIG_DFL); kill (getpid(), signo); signal (signo, sigtstp_handler); } void sigcont_handler (int signo) { - g_driver->GetDebugger().RestoreInputTerminalState(); + if (g_driver) + g_driver->GetDebugger().RestoreInputTerminalState(); + signal (signo, SIG_DFL); kill (getpid(), signo); signal (signo, sigcont_handler);
_______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits