X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fwrite_graphite.c;h=0f9a8bea86edd4828b9a47f06ad1fc62f40bec09;hb=ae16ad5f0791c6d6d41268d1bbe37ea1135b4a83;hp=6baace14410e48f72761d21d6d2db1c9fdb854ad;hpb=029e88709f60d90fede55ed31f775602c1487d24;p=collectd.git diff --git a/src/write_graphite.c b/src/write_graphite.c index 6baace14..0f9a8bea 100644 --- a/src/write_graphite.c +++ b/src/write_graphite.c @@ -51,9 +51,6 @@ #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 +135,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 +180,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 +486,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);