Setting various pointers to NULL after freeing.

This commit is contained in:
whydoubt
2004-04-24 05:02:32 +00:00
parent bde195357e
commit f1bc789dda
3 changed files with 16 additions and 2 deletions

View File

@@ -1,3 +1,7 @@
Sat Apr 24 00:02:14 CDT 2004 Jeff Smith <whydoubt@yahoo.com>
* src/libmdb/mem.c:
* src/libmdb/catalog.c: Setting various pointers to NULL after freeing.
Fri Apr 16 10:48:05 EDT 2004 Brian Bruns <brian@bruns.com> Fri Apr 16 10:48:05 EDT 2004 Brian Bruns <brian@bruns.com>
* src/libmdb/write.c: restructuring of mdb_crack_row?() to accomodate * src/libmdb/write.c: restructuring of mdb_crack_row?() to accomodate
columns deletes/adds columns deletes/adds

View File

@@ -57,7 +57,7 @@ char objname[256];
char tobjtype[256]; char tobjtype[256];
int type; int type;
mdb_free_catalog(mdb); if (mdb->catalog) mdb_free_catalog(mdb);
mdb_alloc_catalog(mdb); mdb_alloc_catalog(mdb);
mdb->num_catalog = 0; mdb->num_catalog = 0;

View File

@@ -63,6 +63,7 @@ mdb_free_stats(MdbHandle *mdb)
g_free(mdb->stats); g_free(mdb->stats);
mdb->stats = NULL; mdb->stats = NULL;
} }
MdbFile * MdbFile *
mdb_alloc_file() mdb_alloc_file()
{ {
@@ -80,6 +81,7 @@ mdb_free_file(MdbFile *f)
if (f->fd) close(f->fd); if (f->fd) close(f->fd);
if (f->filename) free(f->filename); if (f->filename) free(f->filename);
free(f); free(f);
f = NULL;
} }
MdbHandle *mdb_alloc_handle() MdbHandle *mdb_alloc_handle()
@@ -101,16 +103,19 @@ void mdb_free_handle(MdbHandle *mdb)
if (mdb->f && mdb->f->refs<=0) mdb_free_file(mdb->f); if (mdb->f && mdb->f->refs<=0) mdb_free_file(mdb->f);
if (mdb->backend_name) free(mdb->backend_name); if (mdb->backend_name) free(mdb->backend_name);
free(mdb); free(mdb);
mdb = NULL;
} }
void mdb_alloc_catalog(MdbHandle *mdb) void mdb_alloc_catalog(MdbHandle *mdb)
{ {
mdb->catalog = g_ptr_array_new(); mdb->catalog = g_ptr_array_new();
} }
void mdb_free_catalog(MdbHandle *mdb) void mdb_free_catalog(MdbHandle *mdb)
{ {
//g_ptr_array_free(mdb->catalog, FALSE); g_ptr_array_free(mdb->catalog, TRUE);
mdb->catalog = NULL; mdb->catalog = NULL;
} }
MdbTableDef *mdb_alloc_tabledef(MdbCatalogEntry *entry) MdbTableDef *mdb_alloc_tabledef(MdbCatalogEntry *entry)
{ {
MdbTableDef *table; MdbTableDef *table;
@@ -129,7 +134,9 @@ mdb_free_tabledef(MdbTableDef *table)
if (table->usage_map) free(table->usage_map); if (table->usage_map) free(table->usage_map);
if (table->free_usage_map) free(table->free_usage_map); if (table->free_usage_map) free(table->free_usage_map);
free(table); free(table);
table = NULL;
} }
void void
mdb_append_column(GPtrArray *columns, MdbColumn *in_col) mdb_append_column(GPtrArray *columns, MdbColumn *in_col)
{ {
@@ -142,7 +149,9 @@ void
mdb_free_columns(GPtrArray *columns) mdb_free_columns(GPtrArray *columns)
{ {
g_ptr_array_free(columns, TRUE); g_ptr_array_free(columns, TRUE);
columns = NULL;
} }
void void
mdb_append_index(GPtrArray *indices, MdbIndex *in_idx) mdb_append_index(GPtrArray *indices, MdbIndex *in_idx)
{ {
@@ -155,4 +164,5 @@ void
mdb_free_indices(GPtrArray *indices) mdb_free_indices(GPtrArray *indices)
{ {
g_ptr_array_free(indices, TRUE); g_ptr_array_free(indices, TRUE);
indices = NULL;
} }