Skip to content

Commit 3c6a53a

Browse files
alranelfacchinm
authored andcommitted
Respect refcounting before freeing dynamically allocated variables
1 parent 58136fc commit 3c6a53a

File tree

1 file changed

+15
-5
lines changed

1 file changed

+15
-5
lines changed

src/utility/GATT.cpp

+15-5
Original file line numberDiff line numberDiff line change
@@ -70,11 +70,21 @@ void GATTClass::begin()
7070

7171
void GATTClass::end()
7272
{
73-
delete(_genericAccessService);
74-
delete(_deviceNameCharacteristic);
75-
delete(_appearanceCharacteristic);
76-
delete(_genericAttributeService);
77-
delete(_servicesChangedCharacteristic);
73+
if (_genericAccessService->release() <= 0)
74+
delete(_genericAccessService);
75+
76+
if (_deviceNameCharacteristic->release() <= 0)
77+
delete(_deviceNameCharacteristic);
78+
79+
if (_appearanceCharacteristic->release() <= 0)
80+
delete(_appearanceCharacteristic);
81+
82+
if (_genericAttributeService->release() <= 0)
83+
delete(_genericAttributeService);
84+
85+
if (_servicesChangedCharacteristic->release() <= 0)
86+
delete(_servicesChangedCharacteristic);
87+
7888
clearAttributes();
7989
}
8090

0 commit comments

Comments
 (0)