Skip to content

Commit 4d8310c

Browse files
japaricRalfJung
authored andcommitted
gdb_rust_pretty_printing: adapt to the changes in the layout of btree::LeafNode
1 parent 6644e18 commit 4d8310c

File tree

1 file changed

+10
-4
lines changed

1 file changed

+10
-4
lines changed

src/etc/gdb_rust_pretty_printing.py

+10-4
Original file line numberDiff line numberDiff line change
@@ -322,8 +322,10 @@ def to_string(self):
322322
def children(self):
323323
(length, data_ptr) = \
324324
rustpp.extract_length_and_ptr_from_std_btreeset(self.__val)
325-
val = GdbValue(data_ptr.get_wrapped_value().dereference()).get_child_at_index(3)
326-
gdb_ptr = val.get_wrapped_value()
325+
maybe_uninit_keys = GdbValue(data_ptr.get_wrapped_value().dereference()).get_child_at_index(3)
326+
manually_drop_keys = maybe_uninit_keys.get_child_at_index(1)
327+
keys = manually_drop_keys.get_child_at_index(0)
328+
gdb_ptr = keys.get_wrapped_value()
327329
for index in xrange(length):
328330
yield (str(index), gdb_ptr[index])
329331

@@ -345,9 +347,13 @@ def to_string(self):
345347
def children(self):
346348
(length, data_ptr) = \
347349
rustpp.extract_length_and_ptr_from_std_btreemap(self.__val)
348-
keys = GdbValue(data_ptr.get_wrapped_value().dereference()).get_child_at_index(3)
350+
maybe_uninit_keys = GdbValue(data_ptr.get_wrapped_value().dereference()).get_child_at_index(3)
351+
manually_drop_keys = maybe_uninit_keys.get_child_at_index(1)
352+
keys = manually_drop_keys.get_child_at_index(0)
349353
keys_ptr = keys.get_wrapped_value()
350-
vals = GdbValue(data_ptr.get_wrapped_value().dereference()).get_child_at_index(4)
354+
maybe_uninit_vals = GdbValue(data_ptr.get_wrapped_value().dereference()).get_child_at_index(4)
355+
manually_drop_vals = maybe_uninit_vals.get_child_at_index(1)
356+
vals = manually_drop_vals.get_child_at_index(0)
351357
vals_ptr = vals.get_wrapped_value()
352358
for index in xrange(length):
353359
yield (str(index), keys_ptr[index])

0 commit comments

Comments
 (0)