aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas White <taw@physics.org>2023-07-26 14:46:11 +0200
committerThomas White <taw@physics.org>2023-07-26 15:41:23 +0200
commit18055d900d4566f01db478d2df381acb013559e7 (patch)
treed4b48881d5fc945284a6e7ba2e7d53de2d6c3fc8
parenta280fa09fcfc11afd1db610ea183995df5d3267d (diff)
indexamajig: Fix a few small memory leaks
-rw-r--r--src/im-sandbox.c3
-rw-r--r--src/indexamajig.c6
2 files changed, 6 insertions, 3 deletions
diff --git a/src/im-sandbox.c b/src/im-sandbox.c
index 7f02b1cf..c642988f 100644
--- a/src/im-sandbox.c
+++ b/src/im-sandbox.c
@@ -529,6 +529,9 @@ static int run_work(const struct index_args *iargs, Stream *st,
if ( sb->profile ) {
profile_print_and_reset(cookie);
}
+
+ free(pargs.filename);
+ free(pargs.event);
}
/* These are both no-ops if argument is NULL */
diff --git a/src/indexamajig.c b/src/indexamajig.c
index d7b81cf0..57e1e5fb 100644
--- a/src/indexamajig.c
+++ b/src/indexamajig.c
@@ -341,6 +341,7 @@ static error_t parse_arg(int key, char *arg, struct argp_state *state)
break;
case 'x' :
+ free(args->prefix);
args->prefix = strdup(arg);
break;
@@ -1414,11 +1415,11 @@ int main(int argc, char *argv[])
gsl_set_error_handler_off();
struct pf8_private_data *pf8_data = NULL;
- struct detgeom *detgeom = NULL;
if ( args.iargs.peak_search.method == PEAK_PEAKFINDER8 ) {
- detgeom = data_template_get_2d_detgeom_if_possible(args.iargs.dtempl);
+ struct detgeom *detgeom = data_template_get_2d_detgeom_if_possible(args.iargs.dtempl);
pf8_data = prepare_peakfinder8(detgeom, args.iargs.peak_search.peakfinder8_fast);
args.iargs.pf_private = pf8_data;
+ detgeom_free(detgeom);
}
r = create_sandbox(&args.iargs, args.n_proc, args.prefix, args.basename,
@@ -1427,7 +1428,6 @@ int main(int argc, char *argv[])
timeout, args.profile, args.cpu_pin);
if ( pf8_data != NULL ) free_pf8_private_data(pf8_data);
- if ( detgeom != NULL) detgeom_free(detgeom);
cell_free(args.iargs.cell);
free(args.prefix);
free(args.temp_location);