From b4f940533cdb68b65716d2926fcad3379ad98e02 Mon Sep 17 00:00:00 2001 From: gxalpha Date: Mon, 12 Apr 2021 23:36:14 +0200 Subject: [PATCH] mac-virtualcam: Fix memory leaks Fixes some memory leaks Xcode has detected --- .../mac-virtualcam/src/dal-plugin/OBSDALPlugInInterface.mm | 6 +++++- plugins/mac-virtualcam/src/dal-plugin/OBSDALStream.mm | 1 + 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/plugins/mac-virtualcam/src/dal-plugin/OBSDALPlugInInterface.mm b/plugins/mac-virtualcam/src/dal-plugin/OBSDALPlugInInterface.mm index 39b8fd446..47e2f9ea2 100644 --- a/plugins/mac-virtualcam/src/dal-plugin/OBSDALPlugInInterface.mm +++ b/plugins/mac-virtualcam/src/dal-plugin/OBSDALPlugInInterface.mm @@ -69,16 +69,20 @@ HRESULT HardwarePlugIn_QueryInterface(CMIOHardwarePlugInRef self, REFIID uuid, CFStringRef uuidString = CFUUIDCreateString(NULL, cfUuid); CFStringRef hardwarePluginUuid = CFUUIDCreateString(NULL, kCMIOHardwarePlugInInterfaceID); + CFRelease(cfUuid); if (CFEqual(uuidString, hardwarePluginUuid)) { // Return the interface; sRefCount += 1; *interface = OBSDALPlugInRef(); + CFRelease(hardwarePluginUuid); + CFRelease(uuidString); return kCMIOHardwareNoError; } else { DLogFunc(@"ERR Queried for some weird UUID %@", uuidString); } - + CFRelease(hardwarePluginUuid); + CFRelease(uuidString); return E_NOINTERFACE; } diff --git a/plugins/mac-virtualcam/src/dal-plugin/OBSDALStream.mm b/plugins/mac-virtualcam/src/dal-plugin/OBSDALStream.mm index a46a32480..7c4334e43 100644 --- a/plugins/mac-virtualcam/src/dal-plugin/OBSDALStream.mm +++ b/plugins/mac-virtualcam/src/dal-plugin/OBSDALStream.mm @@ -276,6 +276,7 @@ pxdata, width, height, 8, CVPixelBufferGetBytesPerRowOfPlane(pxbuffer, 0), rgbColorSpace, kCGImageAlphaPremultipliedFirst | kCGImageByteOrder32Big); + CFRelease(rgbColorSpace); NSParameterAssert(context); NSGraphicsContext *nsContext = [NSGraphicsContext