Fixed process.gdb-remote to be able to properly propagate the signals and
obey the UnixSignals table that we have in the process.

llvm-svn: 116139
diff --git a/lldb/source/Commands/CommandObjectProcess.cpp b/lldb/source/Commands/CommandObjectProcess.cpp
index c2f4336..09459d8 100644
--- a/lldb/source/Commands/CommandObjectProcess.cpp
+++ b/lldb/source/Commands/CommandObjectProcess.cpp
@@ -846,8 +846,15 @@
 
         if (command.GetArgumentCount() == 1)
         {
-            int signo = Args::StringToSInt32(command.GetArgumentAtIndex(0), -1, 0);
-            if (signo == -1)
+            int signo = LLDB_INVALID_SIGNAL_NUMBER;
+            
+            const char *signal_name = command.GetArgumentAtIndex(0);
+            if (::isxdigit (signal_name[0]))
+                signo = Args::StringToSInt32(signal_name, LLDB_INVALID_SIGNAL_NUMBER, 0);
+            else
+                signo = process->GetUnixSignals().GetSignalNumberFromName (signal_name);
+            
+            if (signo == LLDB_INVALID_SIGNAL_NUMBER)
             {
                 result.AppendErrorWithFormat ("Invalid signal argument '%s'.\n", command.GetArgumentAtIndex(0));
                 result.SetStatus (eReturnStatusFailed);