This repository was archived by the owner on May 28, 2025. It is now read-only.
File tree Expand file tree Collapse file tree 1 file changed +5
-4
lines changed Expand file tree Collapse file tree 1 file changed +5
-4
lines changed Original file line number Diff line number Diff line change 11from sys import version_info
22
33import gdb
4- from gdb import lookup_type
54
65if version_info [0 ] >= 3 :
76 xrange = range
@@ -213,7 +212,7 @@ def children_of_btree_map(map):
213212 def children_of_node (node_ptr , height ):
214213 def cast_to_internal (node ):
215214 internal_type_name = node .type .target ().name .replace ("LeafNode" , "InternalNode" , 1 )
216- internal_type = lookup_type (internal_type_name )
215+ internal_type = gdb . lookup_type (internal_type_name )
217216 return node .cast (internal_type .pointer ())
218217
219218 leaf = node_ptr .dereference ()
@@ -230,8 +229,10 @@ def cast_to_internal(node):
230229 yield child
231230 if i < length :
232231 # Avoid "Cannot perform pointer math on incomplete type" on zero-sized arrays.
233- key = keys [i ]["value" ]["value" ] if keys .type .sizeof > 0 else "()"
234- val = vals [i ]["value" ]["value" ] if vals .type .sizeof > 0 else "()"
232+ key_type_size = keys .type .sizeof
233+ val_type_size = vals .type .sizeof
234+ key = keys [i ]["value" ]["value" ] if key_type_size > 0 else gdb .parse_and_eval ("()" )
235+ val = vals [i ]["value" ]["value" ] if val_type_size > 0 else gdb .parse_and_eval ("()" )
235236 yield key , val
236237
237238 if map ["length" ] > 0 :
You can’t perform that action at this time.
0 commit comments