From 335efd02f5457b7175be2f30dcd47539b215f7b4 Mon Sep 17 00:00:00 2001 From: John Kerl Date: Thu, 24 Dec 2015 00:09:32 -0500 Subject: [PATCH] valgrind findings --- c/containers/join_bucket_keeper.c | 1 + c/mapping/mapper_join.c | 21 +-------------------- c/mapping/mapper_stats1.c | 1 + 3 files changed, 3 insertions(+), 20 deletions(-) diff --git a/c/containers/join_bucket_keeper.c b/c/containers/join_bucket_keeper.c index f604fb508..15d6db51d 100644 --- a/c/containers/join_bucket_keeper.c +++ b/c/containers/join_bucket_keeper.c @@ -199,6 +199,7 @@ void join_bucket_keeper_free(join_bucket_keeper_t* pkeeper, char* prepipe) { sllv_free(pkeeper->pbucket->precords); free(pkeeper->pbucket); pkeeper->plrec_reader->pclose_func(pkeeper->plrec_reader->pvstate, pkeeper->pvhandle, prepipe); + pkeeper->plrec_reader->pfree_func(pkeeper->plrec_reader); lrec_free(pkeeper->prec_peek); free(pkeeper->pctx); free(pkeeper); diff --git a/c/mapping/mapper_join.c b/c/mapping/mapper_join.c index 7961dda2e..6c3ee82a5 100644 --- a/c/mapping/mapper_join.c +++ b/c/mapping/mapper_join.c @@ -292,20 +292,6 @@ static sllv_t* mapper_join_process_sorted(lrec_t* pright_rec, context_t* pctx, v } join_bucket_keeper_t* pkeeper = pstate->pjoin_bucket_keeper; // keystroke-saver - // $ cat a - // x=2 - // a=3 - // - // $ cat b - // a=1 - // - // $ mlr join -j a -f a b - // [rightrec] a=1 - // mlr: internal coding error: failed transition from prefill state. - - // printf("[rightrec] "); // XXX - // lrec_print(pright_rec); - sllv_t* pleft_records = NULL; sllv_t* pbucket_left_unpaired = NULL; sllv_t* pout_recs = sllv_alloc(); @@ -323,14 +309,9 @@ static sllv_t* mapper_join_process_sorted(lrec_t* pright_rec, context_t* pctx, v slls_t* pright_field_values = mlr_selected_values_from_record(pright_rec, pstate->popts->pright_join_field_names); - // printf("[right-field-values] "); // XXX - // slls_print(pright_field_values); - // printf("\n"); - if (pright_field_values != NULL) { - // printf("pre-emit\n"); join_bucket_keeper_emit(pkeeper, pright_field_values, &pleft_records, &pbucket_left_unpaired); - // printf("post-emit\n"); + slls_free(pright_field_values); } if (pstate->popts->emit_left_unpairables) { diff --git a/c/mapping/mapper_stats1.c b/c/mapping/mapper_stats1.c index cad6462de..b805d3e9d 100644 --- a/c/mapping/mapper_stats1.c +++ b/c/mapping/mapper_stats1.c @@ -923,6 +923,7 @@ static void stats1_percentile_free(stats1_t* pstats1) { pstate->reference_count--; if (pstate->reference_count == 0) { percentile_keeper_free(pstate->ppercentile_keeper); + lhmss_free(pstate->poutput_field_names); free(pstate); free(pstats1); }