diff --git a/src/sreport/cluster_reports.c b/src/sreport/cluster_reports.c
index 0a74957f5534ae6f9e9723c0034dfcff37d0a671..a935520947714a389580e61059d499298c8a4a3f 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 8acf8813d45f5abac797bbf1cf588f6616bdf571..64b9ed5461d033fca3fd3da2aaf51219030de22d 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 0826a58e28eba8b3c4b1fa832b09326a8455a7f8..6c8f9e39d56affa52382467e68e948f337cd31ce 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 cb2a54387071b347850fa49d427610ecfa3286d9..28d154a20fff5c19817ca9251d04138d7547ea4c 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]);