X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Futils_cmd_getval.c;h=8d214aad3322d937e5961d4aefbeebc93dc639f0;hb=f8379dd45f4a43595f4027992696ee8d02908bff;hp=186ef9b56d60b6385fde3336316bc0462008c474;hpb=2c2e9a297f59c110ddd4adef6293fe80f39f15b7;p=collectd.git diff --git a/src/utils_cmd_getval.c b/src/utils_cmd_getval.c index 186ef9b5..8d214aad 100644 --- a/src/utils_cmd_getval.c +++ b/src/utils_cmd_getval.c @@ -25,14 +25,18 @@ #include "utils_cache.h" #include "utils_parse_option.h" +#include "utils_cmd_getval.h" #define print_to_socket(fh, ...) \ - if (fprintf (fh, __VA_ARGS__) < 0) { \ - char errbuf[1024]; \ - WARNING ("handle_getval: failed to write to socket #%i: %s", \ - fileno (fh), sstrerror (errno, errbuf, sizeof (errbuf))); \ - return -1; \ - } + do { \ + if (fprintf (fh, __VA_ARGS__) < 0) { \ + char errbuf[1024]; \ + WARNING ("handle_getval: failed to write to socket #%i: %s", \ + fileno (fh), sstrerror (errno, errbuf, sizeof (errbuf))); \ + return -1; \ + } \ + fflush(fh); \ + } while (0) int handle_getval (FILE *fh, char *buffer) { @@ -51,7 +55,7 @@ int handle_getval (FILE *fh, char *buffer) const data_set_t *ds; int status; - int i; + size_t i; if ((fh == NULL) || (buffer == NULL)) return (-1); @@ -123,7 +127,7 @@ int handle_getval (FILE *fh, char *buffer) return (-1); } - if (ds->ds_num != values_num) + if ((size_t) ds->ds_num != values_num) { ERROR ("ds[%s]->ds_num = %i, " "but uc_get_rate_by_name returned %u values.",