scripts: Fix codegen infinite recursion
VkBaseInStructure and VkBaseOutStructure contain pointers to themselves.
Check for this case in object tracker and unique objects codegen so they
don't recursing infinitely.
diff --git a/scripts/object_tracker_generator.py b/scripts/object_tracker_generator.py
index 6a1fa19..abb6216 100644
--- a/scripts/object_tracker_generator.py
+++ b/scripts/object_tracker_generator.py
@@ -624,8 +624,9 @@
for member in struct_members:
if self.isHandleTypeObject(member.type):
return True
- elif member.type in struct_member_dict:
- if self.struct_contains_object(member.type) == True:
+ # recurse for member structs, guard against infinite recursion
+ elif member.type in struct_member_dict and member.type != struct_item:
+ if self.struct_contains_object(member.type):
return True
return False
#