From: Aki Tuomi Date: Tue, 4 Sep 2018 06:43:32 +0000 (+0300) Subject: driver-cassandra: Add driver_cassandra_free X-Git-Tag: 2.3.9~1452 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e3ecc5a13aeb7181f1ea5652d7443996543c9c43;p=thirdparty%2Fdovecot%2Fcore.git driver-cassandra: Add driver_cassandra_free --- diff --git a/src/lib-sql/driver-cassandra.c b/src/lib-sql/driver-cassandra.c index 8249e7cd10..bb78806ea4 100644 --- a/src/lib-sql/driver-cassandra.c +++ b/src/lib-sql/driver-cassandra.c @@ -730,6 +730,21 @@ static void driver_cassandra_metrics_write(struct cassandra_db *db) i_close_fd(&fd); } +static void driver_cassandra_free(struct cassandra_db **_db) +{ + struct cassandra_db *db = *_db; + *_db = NULL; + + i_free(db->metrics_path); + i_free(db->hosts); + i_free(db->error); + i_free(db->keyspace); + i_free(db->user); + i_free(db->password); + array_free(&db->api.module_contexts); + i_free(db); +} + static struct sql_db *driver_cassandra_init_v(const char *connect_string) { struct cassandra_db *db; @@ -802,14 +817,7 @@ static void driver_cassandra_deinit_v(struct sql_db *_db) cass_cluster_free(db->cluster); cass_timestamp_gen_free(db->timestamp_gen); timeout_remove(&db->to_metrics); - i_free(db->metrics_path); - i_free(db->hosts); - i_free(db->error); - i_free(db->keyspace); - i_free(db->user); - i_free(db->password); - array_free(&_db->module_contexts); - i_free(db); + driver_cassandra_free(&db); } static void driver_cassandra_result_unlink(struct cassandra_db *db,