aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog5
-rw-r--r--gdb/signals.c11
2 files changed, 10 insertions, 6 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index d18a677..9ff1de2 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,10 @@
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.
diff --git a/gdb/signals.c b/gdb/signals.c
index cf0078d..d37ec06 100644
--- a/gdb/signals.c
+++ b/gdb/signals.c
@@ -210,14 +210,13 @@ target_signal_to_string (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;
+ /* 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. */