From: <ag...@us...> - 2013-03-22 09:45:46
|
Revision: 2693 http://nagios.svn.sourceforge.net/nagios/?rev=2693&view=rev Author: ageric Date: 2013-03-22 09:45:39 +0000 (Fri, 22 Mar 2013) Log Message: ----------- Macros: fix of invalid free for TOTALHOSTSERVICES* macros The $TOTALHOSTSERVICES*$ macros were computed all at the same time, with the result stashed in mac->x using the mkstr method (from worker.c? why worker.c?) The mkstr uses an static internal buffer of usally 256 strings, of each 32 bytes, for generation of strings, used in macros. When computing TOTALHOSTSERVICES*, the valuse is, as said, stashed in mac->x[], which is freed at cleanup, with some exceptions, and this isn't one of them. Those needs to be exceptions, so static function variables isn't freed Signed-off-by: Max Sikstr?\195?\182m <msi...@op...> Signed-off-by: Andreas Ericsson <ae...@op...> Modified Paths: -------------- nagioscore/trunk/common/macros.c Modified: nagioscore/trunk/common/macros.c =================================================================== --- nagioscore/trunk/common/macros.c 2013-03-21 22:13:38 UTC (rev 2692) +++ nagioscore/trunk/common/macros.c 2013-03-22 09:45:39 UTC (rev 2693) @@ -2776,6 +2776,11 @@ case MACRO_PROCESSSTARTTIME: case MACRO_TEMPPATH: case MACRO_EVENTSTARTTIME: + case MACRO_TOTALHOSTSERVICES: + case MACRO_TOTALHOSTSERVICESOK: + case MACRO_TOTALHOSTSERVICESWARNING: + case MACRO_TOTALHOSTSERVICESUNKNOWN: + case MACRO_TOTALHOSTSERVICESCRITICAL: /* these don't change during the course of monitoring, so no need to free them */ break; default: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |