From c3d20f2ba888a52089922aeb2968dee00fd4e8c8 Mon Sep 17 00:00:00 2001 From: Xing Lin Date: Mon, 4 Nov 2013 22:03:08 -0700 Subject: [PATCH] osd/erasurecode: free allocated memory before return NULL free memory space pointed by row_ids and ind_to_row before return Signed-off-by: Xing Lin --- src/osd/ErasureCodePluginJerasure/jerasure.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/osd/ErasureCodePluginJerasure/jerasure.c b/src/osd/ErasureCodePluginJerasure/jerasure.c index d5752a8ee51..e5df475001c 100755 --- a/src/osd/ErasureCodePluginJerasure/jerasure.c +++ b/src/osd/ErasureCodePluginJerasure/jerasure.c @@ -839,7 +839,11 @@ static int **jerasure_generate_decoding_schedule(int k, int m, int w, int *bitma row_ids = talloc(int, k+m); ind_to_row = talloc(int, k+m); - if (set_up_ids_for_scheduled_decoding(k, m, erasures, row_ids, ind_to_row) < 0) return NULL; + if (set_up_ids_for_scheduled_decoding(k, m, erasures, row_ids, ind_to_row) < 0) { + free(row_ids); + free(ind_to_row); + return NULL; + } /* Now, we're going to create one decoding matrix which is going to decode everything with one call. The hope is that the scheduler -- 2.47.3