aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog5
-rw-r--r--gdb/c-valprint.c2
2 files changed, 7 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index e2ba5f5..34ebe9b 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,10 @@
2011-02-14 Pedro Alves <pedro@codesourcery.com>
+ * c-valprint.c (c_val_print): Print a string with unavailable
+ contents as an array.
+
+2011-02-14 Pedro Alves <pedro@codesourcery.com>
+
* value.h (unpack_bits_as_long): Delete declaration.
(unpack_value_bits_as_long): Declare.
(unpack_value_field_as_long): Declare.
diff --git a/gdb/c-valprint.c b/gdb/c-valprint.c
index baad597..138aca6 100644
--- a/gdb/c-valprint.c
+++ b/gdb/c-valprint.c
@@ -187,6 +187,8 @@ c_val_print (struct type *type, const gdb_byte *valaddr,
long as the entire array is valid. */
if (c_textual_element_type (unresolved_elttype,
options->format)
+ && value_bytes_available (original_value, embedded_offset,
+ TYPE_LENGTH (type))
&& value_bits_valid (original_value,
TARGET_CHAR_BIT * embedded_offset,
TARGET_CHAR_BIT * TYPE_LENGTH (type)))