Rewrite target_signal_to_name().
authorAndrew Cagney <cagney@redhat.com>
Sun, 13 Jan 2002 21:58:16 +0000 (21:58 +0000)
committerAndrew Cagney <cagney@redhat.com>
Sun, 13 Jan 2002 21:58:16 +0000 (21:58 +0000)
gdb/ChangeLog
gdb/signals.c

index d18a677..9ff1de2 100644 (file)
@@ -1,5 +1,10 @@
 2002-01-13  Andrew Cagney  <ac131313@redhat.com>
 
 2002-01-13  Andrew Cagney  <ac131313@redhat.com>
 
+       * signals.c (target_signal_to_name): Rewrite.  Only use
+       signals[].name when in bounds and non-NULL.
+       
+2002-01-13  Andrew Cagney  <ac131313@redhat.com>
+
        From Petr Ledvina <ledvinap@kae.zcu.cz>:
        * signals.c (target_signal_to_name): Verify that SIG is within the
        bounds of the signals array.
        From Petr Ledvina <ledvinap@kae.zcu.cz>:
        * signals.c (target_signal_to_name): Verify that SIG is within the
        bounds of the signals array.
index cf0078d..d37ec06 100644 (file)
@@ -210,14 +210,13 @@ target_signal_to_string (enum target_signal sig)
 char *
 target_signal_to_name (enum target_signal sig)
 {
 char *
 target_signal_to_name (enum target_signal sig)
 {
-  if (sig == TARGET_SIGNAL_UNKNOWN)
-    /* I think the code which prints this will always print it along with
-       the string, so no need to be verbose.  */
-    return "?";
-  else if ((sig >= TARGET_SIGNAL_FIRST) && (sig <= TARGET_SIGNAL_LAST))
+  if ((sig >= TARGET_SIGNAL_FIRST) && (sig <= TARGET_SIGNAL_LAST)
+      && signals[sig].name != NULL)
     return signals[sig].name;
   else
     return signals[sig].name;
   else
-    return signals[sig].name;
+    /* I think the code which prints this will always print it along
+       with the string, so no need to be verbose (very old comment).  */
+    return "?";
 }
 
 /* Given a name, return its signal.  */
 }
 
 /* Given a name, return its signal.  */