X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fdaemon%2Fcommon.c;h=9e0648cabaa94fdb3c38264410990a665cdad989;hb=233ef890d210e7f231ebbc474894e90032ba49b1;hp=4720399154cec878b39091bed12ef9129437c3bb;hpb=b914b8bf2c6580fd78836399e0aaa851eb4883c5;p=collectd.git diff --git a/src/daemon/common.c b/src/daemon/common.c index 47203991..9e0648ca 100644 --- a/src/daemon/common.c +++ b/src/daemon/common.c @@ -491,8 +491,8 @@ size_t strstripnewline (char *buffer) int escape_slashes (char *buffer, size_t buffer_size) { - int i; size_t buffer_len; + size_t i; buffer_len = strlen (buffer); @@ -514,7 +514,7 @@ int escape_slashes (char *buffer, size_t buffer_size) buffer_len--; } - for (i = 0; i < buffer_len - 1; i++) + for (i = 0; i < buffer_len; i++) { if (buffer[i] == '/') buffer[i] = '_'; @@ -946,7 +946,7 @@ int format_values (char *ret, size_t ret_len, /* {{{ */ { size_t offset = 0; int status; - int i; + size_t i; gauge_t *rates = NULL; assert (0 == strcmp (ds->type, vl->type)); @@ -1149,14 +1149,15 @@ int parse_value (const char *value_orig, value_t *ret_value, int ds_type) int parse_values (char *buffer, value_list_t *vl, const data_set_t *ds) { - int i; + size_t i; char *dummy; char *ptr; char *saveptr; - i = -1; + i = 0; dummy = buffer; saveptr = NULL; + vl->time = 0; while ((ptr = strtok_r (dummy, ":", &saveptr)) != NULL) { dummy = NULL; @@ -1164,11 +1165,11 @@ int parse_values (char *buffer, value_list_t *vl, const data_set_t *ds) if (i >= vl->values_len) { /* Make sure i is invalid. */ - i = vl->values_len + 1; + i = 0; break; } - if (i == -1) + if (vl->time == 0) { if (strcmp ("N", ptr) == 0) vl->time = cdtime (); @@ -1187,19 +1188,19 @@ int parse_values (char *buffer, value_list_t *vl, const data_set_t *ds) vl->time = DOUBLE_TO_CDTIME_T (tmp); } + + continue; } - else - { - if ((strcmp ("U", ptr) == 0) && (ds->ds[i].type == DS_TYPE_GAUGE)) - vl->values[i].gauge = NAN; - else if (0 != parse_value (ptr, &vl->values[i], ds->ds[i].type)) - return -1; - } + + if ((strcmp ("U", ptr) == 0) && (ds->ds[i].type == DS_TYPE_GAUGE)) + vl->values[i].gauge = NAN; + else if (0 != parse_value (ptr, &vl->values[i], ds->ds[i].type)) + return -1; i++; } /* while (strtok_r) */ - if ((ptr != NULL) || (i != vl->values_len)) + if ((ptr != NULL) || (i == 0)) return (-1); return (0); } /* int parse_values */