From 6eee473eba94697953e8b3e1b04fe5ef1de5f474 Mon Sep 17 00:00:00 2001 From: Amar Tumballi Date: Tue, 5 Jun 2012 14:15:54 +0530 Subject: core: coverity fixes (mostly resource leak fixes) currently working on obvious resource leak reports in coverity Change-Id: I261f4c578987b16da399ab5a504ad0fda0b176b1 Signed-off-by: Amar Tumballi BUG: 789278 Reviewed-on: http://review.gluster.com/3265 Tested-by: Gluster Build System Reviewed-by: Anand Avati --- cli/src/cli-cmd-parser.c | 17 ++++++++++++++--- cli/src/cli-rpc-ops.c | 4 ++++ 2 files changed, 18 insertions(+), 3 deletions(-) (limited to 'cli') diff --git a/cli/src/cli-cmd-parser.c b/cli/src/cli-cmd-parser.c index 02eb2c369..f447ccae3 100644 --- a/cli/src/cli-cmd-parser.c +++ b/cli/src/cli-cmd-parser.c @@ -367,7 +367,7 @@ cli_cmd_volume_create_parse (const char **words, int wordcount, dict_t **options ret = dict_set_dynstr (dict, "transport", trans_type); if (ret) goto out; - + trans_type = NULL; ret = dict_set_dynstr (dict, "bricks", bricks); if (ret) @@ -385,6 +385,10 @@ out: if (dict) dict_destroy (dict); } + + if (trans_type) + GF_FREE (trans_type); + return ret; } @@ -1576,8 +1580,12 @@ cli_cmd_gsync_set_parse (const char **words, int wordcount, dict_t **options) ret = dict_set_dynstr (dict, "op_value", append_str); } - if (!subop || dict_set_dynstr (dict, "subop", subop) != 0) - ret = -1; + ret = -1; + if (subop) { + ret = dict_set_dynstr (dict, "subop", subop); + if (!ret) + subop = NULL; + } } out: @@ -1589,6 +1597,9 @@ out: } else *options = dict; + if (subop) + GF_FREE (subop); + return ret; } diff --git a/cli/src/cli-rpc-ops.c b/cli/src/cli-rpc-ops.c index 7cc85e483..091c74f54 100644 --- a/cli/src/cli-rpc-ops.c +++ b/cli/src/cli-rpc-ops.c @@ -2780,6 +2780,7 @@ done: if (local) { local->dict = dict_ref (req_dict); frame->local = local; + local = NULL; } ret = dict_allocate_and_serialize (req_dict, @@ -2798,6 +2799,9 @@ done: (xdrproc_t) xdr_gf_cli_req); out: + if (local) + cli_local_wipe (local); + gf_log ("cli", GF_LOG_DEBUG, "Returning %d", ret); return ret; -- cgit