[rrd-developers] [PATCH] Fix potential memory leak in rrd_flushcached during failure.
kevin brintnall
kbrint at rufus.net
Sun Oct 4 17:20:28 CEST 2009
---
src/rrd_flushcached.c | 8 +++++---
1 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/src/rrd_flushcached.c b/src/rrd_flushcached.c
index 5d18a1e..93b0fb5 100644
--- a/src/rrd_flushcached.c
+++ b/src/rrd_flushcached.c
@@ -74,7 +74,7 @@ int rrd_flushcached (int argc, char **argv)
/* try to connect to rrdcached */
status = rrdc_connect(opt_daemon);
- if (status != 0) return status;
+ if (status != 0) goto out;
if (! rrdc_is_connected(opt_daemon))
{
@@ -82,7 +82,8 @@ int rrd_flushcached (int argc, char **argv)
"option to set an address on the command line or set the "
"\"%s\" environment variable.",
ENV_RRDCACHED_ADDRESS);
- return (-1);
+ status = -1;
+ goto out;
}
status = 0;
@@ -106,9 +107,10 @@ int rrd_flushcached (int argc, char **argv)
}
}
+out:
if (opt_daemon) free(opt_daemon);
- return ((status == 0) ? 0 : -1);
+ return status;
} /* int rrd_flush */
/*
--
1.6.4
More information about the rrd-developers
mailing list