From 9416e3dd8ea4dab4ab50e215e11f2cd7a4264948 Mon Sep 17 00:00:00 2001 From: Brandon Miller Date: Mon, 21 Jul 2025 14:43:14 -0400 Subject: Fix memory leak when querying FWN relationships --- python/firmwareninja.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'python') diff --git a/python/firmwareninja.py b/python/firmwareninja.py index a48c8be1..c44aaf0a 100644 --- a/python/firmwareninja.py +++ b/python/firmwareninja.py @@ -829,11 +829,16 @@ class FirmwareNinja: """ count = ctypes.c_ulonglong(0) - relationships = core.BNFirmwareNinjaQueryRelationships(self._handle, count) + relationships = core.BNFirmwareNinjaQueryRelationships(self._handle, ctypes.byref(count)) relationship_list = [] for i in range(count.value): - relationship_list.append(FirmwareNinjaRelationship(self._view, handle=relationships[i])) + relationship_list.append( + FirmwareNinjaRelationship( + self._view, handle=core.BNNewFirmwareNinjaRelationshipReference(relationships[i]) + ) + ) + core.BNFirmwareNinjaFreeRelationships(relationships, count.value) return relationship_list def add_relationship(self, relationship: FirmwareNinjaRelationship) -> None: -- cgit v1.3.1