Skip to content

Commit d95a4cd

Browse files
committed
fix: Memory leak in SymbolLoader
1 parent e8dacaf commit d95a4cd

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

NativeScript/runtime/SymbolLoader.mm

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,12 +19,16 @@
1919

2020
virtual void* loadFunctionSymbol(const char* symbolName) override {
2121
CFStringRef cfName = CFStringCreateWithCStringNoCopy(kCFAllocatorDefault, symbolName, kCFStringEncodingUTF8, kCFAllocatorNull);
22-
return CFBundleGetFunctionPointerForName(this->_bundle, cfName);
22+
void* functionPointer = CFBundleGetFunctionPointerForName(this->_bundle, cfName);
23+
CFRelease(cfName);
24+
return functionPointer;
2325
}
2426

2527
virtual void* loadDataSymbol(const char* symbolName) override {
2628
CFStringRef cfName = CFStringCreateWithCStringNoCopy(kCFAllocatorDefault, symbolName, kCFStringEncodingUTF8, kCFAllocatorNull);
27-
return CFBundleGetDataPointerForName(this->_bundle, cfName);
29+
void* dataPointer = CFBundleGetDataPointerForName(this->_bundle, cfName);
30+
CFRelease(cfName);
31+
return dataPointer;
2832
}
2933

3034
virtual bool load() override {

0 commit comments

Comments
 (0)