blob: f0ec43b1e6aab27a8ce338609a92e9c1d6832c39 [file] [log] [blame]
Andrew Geissler84ad7c52020-06-27 00:00:16 -05001From 9e42c672613131b25da90e58aefd2d39e497c3f6 Mon Sep 17 00:00:00 2001
Brad Bishop286d45c2018-10-02 15:21:57 -04002From: Nathan Rossi <nathan.rossi@petalogix.com>
3Date: Tue, 8 May 2012 18:11:17 +1000
Andrew Geissler84ad7c52020-06-27 00:00:16 -05004Subject: [PATCH 34/43] Fix debug message when register is unavailable
Brad Bishop286d45c2018-10-02 15:21:57 -04005
Andrew Geissler84ad7c52020-06-27 00:00:16 -05006Signed-off-by: Nathan Rossi <nathan.rossi@petalogix.com>
Brad Bishop286d45c2018-10-02 15:21:57 -04007---
8 gdb/frame.c | 13 ++++++++++---
9 1 file changed, 10 insertions(+), 3 deletions(-)
10
11diff --git a/gdb/frame.c b/gdb/frame.c
Andrew Geissler84ad7c52020-06-27 00:00:16 -050012index d8b5f819f1..49706dc97c 100644
Brad Bishop286d45c2018-10-02 15:21:57 -040013--- a/gdb/frame.c
14+++ b/gdb/frame.c
Andrew Geissler84ad7c52020-06-27 00:00:16 -050015@@ -1227,12 +1227,19 @@ frame_unwind_register_value (frame_info *next_frame, int regnum)
Brad Bishop286d45c2018-10-02 15:21:57 -040016 else
17 {
18 int i;
19- const gdb_byte *buf = value_contents (value);
20+ const gdb_byte *buf = NULL;
21+ if (value_entirely_available(value)) {
22+ buf = value_contents (value);
23+ }
24
25 fprintf_unfiltered (gdb_stdlog, " bytes=");
26 fprintf_unfiltered (gdb_stdlog, "[");
27- for (i = 0; i < register_size (gdbarch, regnum); i++)
28- fprintf_unfiltered (gdb_stdlog, "%02x", buf[i]);
29+ if (buf != NULL) {
30+ for (i = 0; i < register_size (gdbarch, regnum); i++)
31+ fprintf_unfiltered (gdb_stdlog, "%02x", buf[i]);
32+ } else {
33+ fprintf_unfiltered (gdb_stdlog, "unavailable");
34+ }
35 fprintf_unfiltered (gdb_stdlog, "]");
36 }
37 }
38--
Andrew Geissler84ad7c52020-06-27 00:00:16 -0500392.17.1
Brad Bishop286d45c2018-10-02 15:21:57 -040040