X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fwrite_graphite.c;h=64794bec964a7823bf5f9028516a1848573e846a;hb=2ce1db8202b1eba6da45b347c0c81a508f8c088a;hp=6baace14410e48f72761d21d6d2db1c9fdb854ad;hpb=0532336600cf2abe1d25af8fbf5ad3cf3b6b31e0;p=collectd.git diff --git a/src/write_graphite.c b/src/write_graphite.c index 6baace14..64794bec 100644 --- a/src/write_graphite.c +++ b/src/write_graphite.c @@ -47,13 +47,9 @@ #include "plugin.h" #include "configfile.h" -#include "utils_cache.h" #include "utils_complain.h" #include "utils_format_graphite.h" -/* Folks without pthread will need to disable this plugin. */ -#include - #include #define WG_DEFAULT_NODE "localhost" @@ -138,7 +134,10 @@ static void wg_reset_buffer (struct wg_callback *cb) static int wg_send_buffer (struct wg_callback *cb) { - ssize_t status = 0; + ssize_t status; + + if (cb->sock_fd < 0) + return (-1); status = swrite (cb->sock_fd, cb->send_buf, strlen (cb->send_buf)); if (status != 0) @@ -180,7 +179,7 @@ static int wg_flush_nolock (cdtime_t timeout, struct wg_callback *cb) return (0); } - if (cb->send_buf_fill <= 0) + if (cb->send_buf_fill == 0) { cb->send_buf_init_time = cdtime (); return (0); @@ -486,13 +485,12 @@ static int wg_config_node (oconfig_item_t *ci) int i; int status = 0; - cb = malloc (sizeof (*cb)); + cb = calloc (1, sizeof (*cb)); if (cb == NULL) { - ERROR ("write_graphite plugin: malloc failed."); + ERROR ("write_graphite plugin: calloc failed."); return (-1); } - memset (cb, 0, sizeof (*cb)); cb->sock_fd = -1; cb->name = NULL; cb->node = strdup (WG_DEFAULT_NODE);