X-Git-Url: https://git.octo.it/?p=collectd.git;a=blobdiff_plain;f=src%2Fdbi.c;h=60324e8643cf681bdae01e55cff2b58fb64b25a7;hp=ba91bffc51b24b8b769058ad8712a0c983de5e0d;hb=7b8851b26928b609ce850e78c1eabb50ff319244;hpb=5ee365a2a066bba5c21f510c3397a3ad6034d357 diff --git a/src/dbi.c b/src/dbi.c index ba91bffc..60324e86 100644 --- a/src/dbi.c +++ b/src/dbi.c @@ -108,10 +108,10 @@ static const char *cdbi_strerror(dbi_conn conn, /* {{{ */ msg = NULL; status = dbi_conn_error(conn, &msg); if ((status >= 0) && (msg != NULL)) - ssnprintf(buffer, buffer_size, "%s (status %i)", msg, status); + snprintf(buffer, buffer_size, "%s (status %i)", msg, status); else - ssnprintf(buffer, buffer_size, "dbi_conn_error failed with status %i", - status); + snprintf(buffer, buffer_size, "dbi_conn_error failed with status %i", + status); return buffer; } /* }}} const char *cdbi_conn_error */ @@ -132,12 +132,12 @@ static int cdbi_result_get_field(dbi_result res, /* {{{ */ long long value; value = dbi_result_get_longlong_idx(res, index); - ssnprintf(buffer, buffer_size, "%lli", value); + snprintf(buffer, buffer_size, "%lli", value); } else if (src_type == DBI_TYPE_DECIMAL) { double value; value = dbi_result_get_double_idx(res, index); - ssnprintf(buffer, buffer_size, "%63.15g", value); + snprintf(buffer, buffer_size, "%63.15g", value); } else if (src_type == DBI_TYPE_STRING) { const char *value; @@ -188,7 +188,10 @@ static void cdbi_database_free(cdbi_database_t *db) /* {{{ */ if (db->q_prep_areas) for (size_t i = 0; i < db->queries_num; ++i) udb_query_delete_preparation_area(db->q_prep_areas[i]); - free(db->q_prep_areas); + sfree(db->q_prep_areas); + /* N.B.: db->queries references objects "owned" by the global queries + * variable. Free the array here, but not the content. */ + sfree(db->queries); sfree(db); } /* }}} void cdbi_database_free */ @@ -302,7 +305,7 @@ static int cdbi_config_add_database(oconfig_item_t *ci) /* {{{ */ status = cf_util_get_string(child, &db->host); else if (strcasecmp("Interval", child->key) == 0) status = cf_util_get_cdtime(child, &db->interval); - else if (strcasecmp("PluginName", child->key) == 0) + else if (strcasecmp("Plugin", child->key) == 0) status = cf_util_get_string(child, &db->plugin_name); else { WARNING("dbi plugin: Option `%s' not allowed here.", child->key); @@ -494,8 +497,8 @@ static int cdbi_read_database_query(cdbi_database_t *db, /* {{{ */ } column_num = (size_t)db_status; - DEBUG("cdbi_read_database_query (%s, %s): There are %zu columns.", db->name, - udb_query_get_name(q), column_num); + DEBUG("cdbi_read_database_query (%s, %s): There are %" PRIsz " columns.", + db->name, udb_query_get_name(q), column_num); } /* Allocate `column_names' and `column_values'. {{{ */ @@ -536,7 +539,7 @@ static int cdbi_read_database_query(cdbi_database_t *db, /* {{{ */ column_name = dbi_result_get_field_name(res, (unsigned int)(i + 1)); if (column_name == NULL) { ERROR("dbi plugin: cdbi_read_database_query (%s, %s): " - "Cannot retrieve name of field %zu.", + "Cannot retrieve name of field %" PRIsz ".", db->name, udb_query_get_name(q), i + 1); BAIL_OUT(-1); } @@ -576,7 +579,7 @@ static int cdbi_read_database_query(cdbi_database_t *db, /* {{{ */ if (status != 0) { ERROR("dbi plugin: cdbi_read_database_query (%s, %s): " - "cdbi_result_get_field (%zu) failed.", + "cdbi_result_get_field (%" PRIsz ") failed.", db->name, udb_query_get_name(q), i + 1); status = -1; break;