blob: d9adde04c2233aa1acfa6104cc829dffe378a6e8 [file] [log] [blame]
From 9ff06108cd44e84ba6c68bfa6737e793f117e303 Mon Sep 17 00:00:00 2001
From: Nate Karstens <nate.karstens@garmin.com>
Date: Thu, 10 Aug 2017 08:46:03 -0500
Subject: [PATCH] Change a dynamic allocation to file-scope variable
Changes a variable from being dynamically-allocated to being
statically-allocated at the file scope. Addresses a Coverity
issue where it appeared that the memory was being leaked.
Upstream-Status: Submitted [dts@apple.com]
Signed-off-by: Nate Karstens <nate.karstens@garmin.com>
---
mDNSPosix/mDNSPosix.c | 14 ++++----------
1 file changed, 4 insertions(+), 10 deletions(-)
diff --git a/mDNSPosix/mDNSPosix.c b/mDNSPosix/mDNSPosix.c
index 7aeee7b..2d25016 100755
--- a/mDNSPosix/mDNSPosix.c
+++ b/mDNSPosix/mDNSPosix.c
@@ -81,6 +81,7 @@ static sigset_t gEventSignalSet; // Signals which event loop list
static sigset_t gEventSignals; // Signals which were received while inside loop
static PosixNetworkInterface *gRecentInterfaces;
+static IfChangeRec gChgRec;
// ***************************************************************************
// Globals (for debugging)
@@ -1641,18 +1642,11 @@ mDNSlocal void InterfaceChangeCallback(int fd, void *context)
mDNSlocal mStatus WatchForInterfaceChange(mDNS *const m)
{
mStatus err;
- IfChangeRec *pChgRec;
- pChgRec = (IfChangeRec*) mDNSPlatformMemAllocateClear(sizeof *pChgRec);
- if (pChgRec == NULL)
- return mStatus_NoMemoryErr;
-
- pChgRec->mDNS = m;
- err = OpenIfNotifySocket(&pChgRec->NotifySD);
+ gChgRec.mDNS = m;
+ err = OpenIfNotifySocket(&gChgRec.NotifySD);
if (err == 0)
- err = mDNSPosixAddFDToEventLoop(pChgRec->NotifySD, InterfaceChangeCallback, pChgRec);
- if (err)
- mDNSPlatformMemFree(pChgRec);
+ err = mDNSPosixAddFDToEventLoop(gChgRec.NotifySD, InterfaceChangeCallback, &gChgRec);
return err;
}
--
2.20.1