aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog6
-rw-r--r--gdb/values.c4
2 files changed, 9 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index e1400e0..2971498 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,9 @@
+2002-11-05 Pierre Muller <muller@ics.u-strasbg.fr>
+
+ * values.c (value_change_enclosing_type): Set
+ enclosing_type field correctly also for the case where
+ more memory needs to be allocated.
+
2002-11-03 Mark Kettenis <kettenis@gnu.org>
* i387-tdep.c (i387_print_float_info): Call fputs_filtered instead
diff --git a/gdb/values.c b/gdb/values.c
index c943f28..950dee6 100644
--- a/gdb/values.c
+++ b/gdb/values.c
@@ -862,7 +862,9 @@ value_change_enclosing_type (struct value *val, struct type *new_encl_type)
struct value *prev;
new_val = (struct value *) xrealloc (val, sizeof (struct value) + TYPE_LENGTH (new_encl_type));
-
+
+ VALUE_ENCLOSING_TYPE (new_val) = new_encl_type;
+
/* We have to make sure this ends up in the same place in the value
chain as the original copy, so it's clean-up behavior is the same.
If the value has been released, this is a waste of time, but there