Skip to content

Commit 46b9139

Browse files
committed
Fix QualifiedName being leaked in function UserTypeReference related functions
1 parent 55435dc commit 46b9139

File tree

1 file changed

+4
-0
lines changed

1 file changed

+4
-0
lines changed

function.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -410,13 +410,15 @@ void Function::AddUserTypeReference(Architecture* fromArch, uint64_t fromAddr, c
410410
{
411411
BNQualifiedName nameObj = name.GetAPIObject();
412412
BNAddUserTypeReference(m_object, fromArch->GetObject(), fromAddr, &nameObj);
413+
QualifiedName::FreeAPIObject(&nameObj);
413414
}
414415

415416

416417
void Function::RemoveUserTypeReference(Architecture* fromArch, uint64_t fromAddr, const QualifiedName& name)
417418
{
418419
BNQualifiedName nameObj = name.GetAPIObject();
419420
BNRemoveUserTypeReference(m_object, fromArch->GetObject(), fromAddr, &nameObj);
421+
QualifiedName::FreeAPIObject(&nameObj);
420422
}
421423

422424

@@ -425,6 +427,7 @@ void Function::AddUserTypeFieldReference(
425427
{
426428
BNQualifiedName nameObj = name.GetAPIObject();
427429
BNAddUserTypeFieldReference(m_object, fromArch->GetObject(), fromAddr, &nameObj, offset, size);
430+
QualifiedName::FreeAPIObject(&nameObj);
428431
}
429432

430433

@@ -433,6 +436,7 @@ void Function::RemoveUserTypeFieldReference(
433436
{
434437
BNQualifiedName nameObj = name.GetAPIObject();
435438
BNRemoveUserTypeFieldReference(m_object, fromArch->GetObject(), fromAddr, &nameObj, offset, size);
439+
QualifiedName::FreeAPIObject(&nameObj);
436440
}
437441

438442

0 commit comments

Comments
 (0)