X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fliboconfig%2Foconfig.c;h=cfe9c5a1450fb5588c341fca56aadcc8a1f35a2f;hb=441e067a2d5a294517bd87ca45c87fd67377d2cf;hp=d01c79dd3f164f5da66bf17b208c0af4d534164a;hpb=7531a36086295c02ccb2d78c41d355a424426607;p=collectd.git diff --git a/src/liboconfig/oconfig.c b/src/liboconfig/oconfig.c index d01c79dd..cfe9c5a1 100644 --- a/src/liboconfig/oconfig.c +++ b/src/liboconfig/oconfig.c @@ -106,13 +106,12 @@ oconfig_item_t *oconfig_clone (const oconfig_item_t *ci_orig) { oconfig_item_t *ci_copy; - ci_copy = (oconfig_item_t *) malloc (sizeof (*ci_copy)); + ci_copy = calloc (1, sizeof (*ci_copy)); if (ci_copy == NULL) { - fprintf (stderr, "malloc failed.\n"); + fprintf (stderr, "calloc failed.\n"); return (NULL); } - memset (ci_copy, 0, sizeof (*ci_copy)); ci_copy->values = NULL; ci_copy->parent = NULL; ci_copy->children = NULL; @@ -177,7 +176,7 @@ oconfig_item_t *oconfig_clone (const oconfig_item_t *ci_orig) for (i = 0; i < ci_copy->children_num; i++) { oconfig_item_t *child; - + child = oconfig_clone (ci_orig->children + i); if (child == NULL) { @@ -193,7 +192,7 @@ oconfig_item_t *oconfig_clone (const oconfig_item_t *ci_orig) return (ci_copy); } /* oconfig_item_t *oconfig_clone */ -void oconfig_free_all (oconfig_item_t *ci) +static void oconfig_free_all (oconfig_item_t *ci) { int i; @@ -222,7 +221,6 @@ void oconfig_free (oconfig_item_t *ci) { oconfig_free_all (ci); free (ci); - ci = NULL; } /*