aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog6
-rw-r--r--gdb/spu-tdep.c12
2 files changed, 14 insertions, 4 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index d375191..f28f62a 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,9 @@
+2008-03-10 Hidetaka Takano <hidetaka.takano@glb.toshiba.co.jp>
+
+ * spu-tdep.c (info_spu_event_command): Insert a '\0' to the end
+ of the data passing to strtoulst function.
+ (info_spu_signal_command): Likewise.
+
2008-03-08 Vladimir Prus <vladimir@codesourcery.com>
* mi/mi-interp.c (mi_command_loop): Remove
diff --git a/gdb/spu-tdep.c b/gdb/spu-tdep.c
index 9fcb118..882b613 100644
--- a/gdb/spu-tdep.c
+++ b/gdb/spu-tdep.c
@@ -1505,16 +1505,18 @@ info_spu_event_command (char *args, int from_tty)
xsnprintf (annex, sizeof annex, "%d/event_status", id);
len = target_read (&current_target, TARGET_OBJECT_SPU, annex,
- buf, 0, sizeof buf);
+ buf, 0, (sizeof (buf) - 1));
if (len <= 0)
error (_("Could not read event_status."));
+ buf[len] = '\0';
event_status = strtoulst (buf, NULL, 16);
xsnprintf (annex, sizeof annex, "%d/event_mask", id);
len = target_read (&current_target, TARGET_OBJECT_SPU, annex,
- buf, 0, sizeof buf);
+ buf, 0, (sizeof (buf) - 1));
if (len <= 0)
error (_("Could not read event_mask."));
+ buf[len] = '\0';
event_mask = strtoulst (buf, NULL, 16);
chain = make_cleanup_ui_out_tuple_begin_end (uiout, "SPUInfoEvent");
@@ -1565,9 +1567,10 @@ info_spu_signal_command (char *args, int from_tty)
xsnprintf (annex, sizeof annex, "%d/signal1_type", id);
len = target_read (&current_target, TARGET_OBJECT_SPU, annex,
- buf, 0, sizeof buf);
+ buf, 0, (sizeof (buf) - 1));
if (len <= 0)
error (_("Could not read signal1_type."));
+ buf[len] = '\0';
signal1_type = strtoulst (buf, NULL, 16);
xsnprintf (annex, sizeof annex, "%d/signal2", id);
@@ -1582,9 +1585,10 @@ info_spu_signal_command (char *args, int from_tty)
xsnprintf (annex, sizeof annex, "%d/signal2_type", id);
len = target_read (&current_target, TARGET_OBJECT_SPU, annex,
- buf, 0, sizeof buf);
+ buf, 0, (sizeof (buf) - 1));
if (len <= 0)
error (_("Could not read signal2_type."));
+ buf[len] = '\0';
signal2_type = strtoulst (buf, NULL, 16);
chain = make_cleanup_ui_out_tuple_begin_end (uiout, "SPUInfoSignal");