Don't SEGV in the signal handler in a unit test.

Change-Id: Id441b096a145c630915c71e06338f33b447b008d
diff --git a/src/runtime_linux.cc b/src/runtime_linux.cc
index df66162..d68e4bd 100644
--- a/src/runtime_linux.cc
+++ b/src/runtime_linux.cc
@@ -233,7 +233,10 @@
                       signal_number == SIGFPE || signal_number == SIGSEGV);
 
   OS os_info;
-
+  const char* cmd_line = GetCmdLine();
+  if (cmd_line == NULL) {
+    cmd_line = "<unset>"; // Because we're in a unit test, say.
+  }
   UContext thread_context(raw_context);
   Backtrace thread_backtrace;
 
@@ -244,7 +247,7 @@
                                       GetSignalCodeName(signal_number, info->si_code))
                       << (has_address ? StringPrintf(" fault addr %p", info->si_addr) : "") << "\n"
                       << "OS: " << Dumpable<OS>(os_info) << "\n"
-                      << "Cmdline: " << GetCmdLine() << "\n"
+                      << "Cmdline: " << cmd_line << "\n"
                       << "Registers:\n" << Dumpable<UContext>(thread_context) << "\n"
                       << "Backtrace:\n" << Dumpable<Backtrace>(thread_backtrace);