X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Ffilecount.c;h=47caf93f264af693e0e011634abbf62345b62908;hb=f14bb45d570e0b34bdd3a2a0cadfe414c3dfda40;hp=9f6ea564bf8c2624df27f9844f98f5a524aa5b14;hpb=856a68d51bae3f76f54b7b056e83ca8801223d90;p=collectd.git diff --git a/src/filecount.c b/src/filecount.c index 9f6ea564..3b5038cd 100644 --- a/src/filecount.c +++ b/src/filecount.c @@ -18,7 +18,7 @@ * * Authors: * Alessandro Iurlano - * Florian octo Forster + * Florian octo Forster **/ #include "collectd.h" @@ -344,18 +344,18 @@ static int fc_config_add_dir (oconfig_item_t *ci) } /* Initialize `dir' */ - dir = (fc_directory_conf_t *) malloc (sizeof (*dir)); + dir = calloc (1, sizeof (*dir)); if (dir == NULL) { - ERROR ("filecount plugin: malloc failed."); + ERROR ("filecount plugin: calloc failed."); return (-1); } - memset (dir, 0, sizeof (*dir)); dir->path = strdup (ci->values[0].value.string); if (dir->path == NULL) { ERROR ("filecount plugin: strdup failed."); + sfree (dir); return (-1); } @@ -478,10 +478,8 @@ static int fc_read_dir_callback (const char *dirname, const char *filename, if (S_ISDIR (statbuf.st_mode) && (dir->options & FC_RECURSIVE)) { - if(dir->options & FC_HIDDEN) - status = walk_directory (abs_path, fc_read_dir_callback, dir,/* include hidden */1); - else - status = walk_directory (abs_path, fc_read_dir_callback, dir,/* include hidden */ 0); + status = walk_directory (abs_path, fc_read_dir_callback, dir, + /* include hidden = */ (dir->options & FC_HIDDEN) ? 1 : 0); return (status); } else if (!S_ISREG (statbuf.st_mode)) @@ -544,10 +542,8 @@ static int fc_read_dir (fc_directory_conf_t *dir) if (dir->mtime != 0) dir->now = time (NULL); - if(dir->options & FC_HIDDEN) - status = walk_directory (dir->path, fc_read_dir_callback, dir,/* include hidden */ 1); - else - status = walk_directory (dir->path, fc_read_dir_callback, dir,/* include hidden */ 0); + status = walk_directory (dir->path, fc_read_dir_callback, dir, + /* include hidden */ (dir->options & FC_HIDDEN) ? 1 : 0); if (status != 0) { WARNING ("filecount plugin: walk_directory (%s) failed.", dir->path);