X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Futils_cmd_getval.c;h=196b45e3267eca52bc7950ebac6b181aaa837d65;hb=4103105fb43cd72294f165b2541540b3a8a99532;hp=354c553e7f0c6d8b256a1ff85cdb8c05d02dcffb;hpb=2761756b5ad2c9a973b30540633218202860a4d7;p=collectd.git diff --git a/src/utils_cmd_getval.c b/src/utils_cmd_getval.c index 354c553e..1185a03a 100644 --- a/src/utils_cmd_getval.c +++ b/src/utils_cmd_getval.c @@ -25,19 +25,24 @@ **/ #include "collectd.h" + #include "common.h" #include "plugin.h" #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) { @@ -128,18 +133,18 @@ int handle_getval (FILE *fh, char *buffer) return (-1); } - if ((size_t) ds->ds_num != values_num) + if (ds->ds_num != values_num) { - ERROR ("ds[%s]->ds_num = %i, " - "but uc_get_rate_by_name returned %u values.", - ds->type, ds->ds_num, (unsigned int) values_num); + ERROR ("ds[%s]->ds_num = %zu, " + "but uc_get_rate_by_name returned %zu values.", + ds->type, ds->ds_num, values_num); print_to_socket (fh, "-1 Error reading value from cache.\n"); sfree (values); sfree (identifier_copy); return (-1); } - print_to_socket (fh, "%u Value%s found\n", (unsigned int) values_num, + print_to_socket (fh, "%zu Value%s found\n", values_num, (values_num == 1) ? "" : "s"); for (i = 0; i < values_num; i++) {