summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Vassdal <shutter@canternet.org>2013-11-24 16:04:32 -0800
committerAttila Molnar <attilamolnar@hush.com>2013-12-18 16:10:33 +0100
commit0680b529874b701b20650586d8466a155d9ba0d5 (patch)
tree0df766db7b4dda4102fcf3ab2cefd05bb3d8fb1b
parentff407e675117ca15f35df4ff294d07fa43069e63 (diff)
Fix issues discovered by Coverity
- Fix resource leak in InspIRCd::Format() - Explicitly set NewServices to NULL before the object it points to goes out of scope
-rw-r--r--src/helperfuncs.cpp2
-rw-r--r--src/modules.cpp2
2 files changed, 4 insertions, 0 deletions
diff --git a/src/helperfuncs.cpp b/src/helperfuncs.cpp
index 590b993d1..1899ce1b3 100644
--- a/src/helperfuncs.cpp
+++ b/src/helperfuncs.cpp
@@ -400,6 +400,8 @@ const char* InspIRCd::Format(va_list &vaList, const char* formatString)
va_copy(dst, vaList);
int vsnret = vsnprintf(&formatBuffer[0], formatBuffer.size(), formatString, dst);
+ va_end(dst);
+
if (vsnret > 0 && static_cast<unsigned>(vsnret) < formatBuffer.size())
{
return &formatBuffer[0];
diff --git a/src/modules.cpp b/src/modules.cpp
index 92f619743..2157d1948 100644
--- a/src/modules.cpp
+++ b/src/modules.cpp
@@ -550,6 +550,8 @@ void ModuleManager::LoadAll()
}
}
+ this->NewServices = NULL;
+
if (!PrioritizeHooks())
ServerInstance->Exit(EXIT_STATUS_MODULE);
}