You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@arrow.apache.org by li...@apache.org on 2023/06/14 11:43:55 UTC
[arrow-adbc] branch main updated: fix(c): Fix destructor mem leaks (#785)
This is an automated email from the ASF dual-hosted git repository.
lidavidm pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/arrow-adbc.git
The following commit(s) were added to refs/heads/main by this push:
new 1694d5c4 fix(c): Fix destructor mem leaks (#785)
1694d5c4 is described below
commit 1694d5c4323eecabac0f0d6db1f93c935d72c46b
Author: William Ayd <wi...@icloud.com>
AuthorDate: Wed Jun 14 04:43:47 2023 -0700
fix(c): Fix destructor mem leaks (#785)
---
c/driver/common/utils.c | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/c/driver/common/utils.c b/c/driver/common/utils.c
index 62fb9ad7..e2060737 100644
--- a/c/driver/common/utils.c
+++ b/c/driver/common/utils.c
@@ -778,6 +778,8 @@ void AdbcGetObjectsDataDelete(struct AdbcGetObjectsData* get_objects_data) {
free(table->table_columns[column_index]);
}
+ free(table->table_columns);
+
for (int64_t constraint_index = 0; constraint_index < table->n_table_constraints;
constraint_index++) {
struct AdbcGetObjectsConstraint* constraint =
@@ -787,14 +789,24 @@ void AdbcGetObjectsDataDelete(struct AdbcGetObjectsData* get_objects_data) {
usage_index++) {
free(constraint->constraint_column_usages[usage_index]);
}
+
+ free(constraint->constraint_column_usages);
+ free(table->table_constraints[constraint_index]);
}
+ free(table->table_constraints);
free(table);
}
+
+ free(schema->db_schema_tables);
free(schema);
}
+
+ free(catalog->catalog_db_schemas);
free(catalog);
}
+
+ free(get_objects_data->catalogs);
free(get_objects_data);
}