diff options
author | Thomas White <taw@physics.org> | 2010-04-01 16:24:15 +0200 |
---|---|---|
committer | Thomas White <taw@physics.org> | 2010-04-01 16:24:15 +0200 |
commit | 5b27e129e1fdbbb7f99cc7ed9d9d211010b4cee9 (patch) | |
tree | a69b581f3babec6d2edf2be68de5618f01a4b52c | |
parent | fced9d2b5b9154205886e12b5cde73292db3b59d (diff) |
Fix a couple of memory bugs
-rw-r--r-- | src/cell.c | 3 | ||||
-rw-r--r-- | src/indexamajig.c | 5 |
2 files changed, 3 insertions, 5 deletions
@@ -351,7 +351,6 @@ int cell_get_reciprocal(UnitCell *cell, gsl_matrix_set(m, 2, 2, cell->cz); /* Invert */ - /* Invert */ perm = gsl_permutation_alloc(m->size1); if ( perm == NULL ) { ERROR("Couldn't allocate permutation\n"); @@ -381,6 +380,8 @@ int cell_get_reciprocal(UnitCell *cell, free(cell); return -1; } + gsl_permutation_free(perm); + gsl_matrix_free(m); /* Transpose */ gsl_matrix_transpose(inv); diff --git a/src/indexamajig.c b/src/indexamajig.c index 71fdf26d..da23858d 100644 --- a/src/indexamajig.c +++ b/src/indexamajig.c @@ -327,9 +327,6 @@ static void *process_image(void *pargsv) /* Only free cell if found */ free(image.indexed_cell); - /* Free detector panel records */ - free(image.det.panels); - done: free(image.data); free(image.det.panels); @@ -477,7 +474,7 @@ int main(int argc, char *argv[]) } if ( prefix == NULL ) { - prefix = ""; + prefix = strdup(""); } if ( nthreads == 0 ) { |