From d471c25b3504e46ae3bc0241ce93fc4fd61e3628 Mon Sep 17 00:00:00 2001 From: Tim Wickberg <tim@schedmd.com> Date: Fri, 22 Jan 2016 17:06:33 -0500 Subject: [PATCH] remove superfluous xstrdup(cluster_flag) calls Superfluous xstrdup call to passed argument causes a small memory leak in sreport, caught by Coverity. --- src/sreport/cluster_reports.c | 9 +++------ src/sreport/job_reports.c | 3 +-- src/sreport/resv_reports.c | 4 ++-- src/sreport/user_reports.c | 3 +-- 4 files changed, 7 insertions(+), 12 deletions(-) diff --git a/src/sreport/cluster_reports.c b/src/sreport/cluster_reports.c index 0a74957f553..a9355209477 100644 --- a/src/sreport/cluster_reports.c +++ b/src/sreport/cluster_reports.c @@ -95,8 +95,7 @@ static int _set_wckey_cond(int *start, int argc, char *argv[], if (!wckey_cond->cluster_list) wckey_cond->cluster_list = list_create(slurm_destroy_char); if (cluster_flag) - slurm_addto_char_list(wckey_cond->cluster_list, - xstrdup(cluster_flag)); + slurm_addto_char_list(wckey_cond->cluster_list, cluster_flag); for (i = (*start); i < argc; i++) { end = parse_option_end(argv[i]); @@ -203,8 +202,7 @@ static int _set_assoc_cond(int *start, int argc, char *argv[], if (!assoc_cond->cluster_list) assoc_cond->cluster_list = list_create(slurm_destroy_char); if (cluster_flag) - slurm_addto_char_list(assoc_cond->cluster_list, - xstrdup(cluster_flag)); + slurm_addto_char_list(assoc_cond->cluster_list, cluster_flag); for (i = (*start); i < argc; i++) { end = parse_option_end(argv[i]); @@ -309,8 +307,7 @@ static int _set_cluster_cond(int *start, int argc, char *argv[], if (!cluster_cond->cluster_list) cluster_cond->cluster_list = list_create(slurm_destroy_char); if (cluster_flag) - slurm_addto_char_list(cluster_cond->cluster_list, - xstrdup(cluster_flag)); + slurm_addto_char_list(cluster_cond->cluster_list, cluster_flag); for (i = (*start); i < argc; i++) { end = parse_option_end(argv[i]); diff --git a/src/sreport/job_reports.c b/src/sreport/job_reports.c index 8acf8813d45..64b9ed5461d 100644 --- a/src/sreport/job_reports.c +++ b/src/sreport/job_reports.c @@ -253,8 +253,7 @@ static int _set_cond(int *start, int argc, char *argv[], if (!job_cond->cluster_list) job_cond->cluster_list = list_create(slurm_destroy_char); if (cluster_flag) - slurm_addto_char_list(job_cond->cluster_list, - xstrdup(cluster_flag)); + slurm_addto_char_list(job_cond->cluster_list, cluster_flag); for (i = (*start); i < argc; i++) { end = parse_option_end(argv[i]); diff --git a/src/sreport/resv_reports.c b/src/sreport/resv_reports.c index 0826a58e28e..6c8f9e39d56 100644 --- a/src/sreport/resv_reports.c +++ b/src/sreport/resv_reports.c @@ -101,8 +101,8 @@ static int _set_resv_cond(int *start, int argc, char *argv[], if (!resv_cond->cluster_list) resv_cond->cluster_list = list_create(slurm_destroy_char); if (cluster_flag) - slurm_addto_char_list(resv_cond->cluster_list, - xstrdup(cluster_flag)); + slurm_addto_char_list(resv_cond->cluster_list, cluster_flag); + for (i=(*start); i<argc; i++) { end = parse_option_end(argv[i]); if (!end) diff --git a/src/sreport/user_reports.c b/src/sreport/user_reports.c index cb2a5438707..28d154a20ff 100644 --- a/src/sreport/user_reports.c +++ b/src/sreport/user_reports.c @@ -82,8 +82,7 @@ static int _set_cond(int *start, int argc, char *argv[], if (!assoc_cond->cluster_list) assoc_cond->cluster_list = list_create(slurm_destroy_char); if (cluster_flag) - slurm_addto_char_list(assoc_cond->cluster_list, - xstrdup(cluster_flag)); + slurm_addto_char_list(assoc_cond->cluster_list, cluster_flag); for (i = (*start); i < argc; i++) { end = parse_option_end(argv[i]); -- GitLab