diff --git a/src/plugins/slurmctld/nonstop/read_config.c b/src/plugins/slurmctld/nonstop/read_config.c index 22e09990240c8aae3b0d07c8e0e872202947afc8..0c416597b3a805172deb1f625b93aaaa4e379ac2 100644 --- a/src/plugins/slurmctld/nonstop/read_config.c +++ b/src/plugins/slurmctld/nonstop/read_config.c @@ -365,7 +365,7 @@ extern void create_hot_spare_resv(void) RESERVE_FLAG_IGN_JOBS; resv_msg.name = resv_name; resv_msg.node_cnt = node_cnt; - resv_msg.partition = part_ptr->name; + resv_msg.partition = xstrdup(part_ptr->name); resv_msg.start_time = now; resv_msg.users = xstrdup("root"); if (find_resv_name(resv_name)) { @@ -377,6 +377,7 @@ extern void create_hot_spare_resv(void) resv_name); (void) create_resv(&resv_msg); } + xfree(resv_msg.partition); xfree(resv_msg.users); break; } diff --git a/src/slurmctld/reservation.c b/src/slurmctld/reservation.c index a581b3304f35049a4e4cfbec22c9f3bbb273d3e7..06c8d45351dda8bf5779dbf3bf54ce7c50074a19 100644 --- a/src/slurmctld/reservation.c +++ b/src/slurmctld/reservation.c @@ -2391,7 +2391,7 @@ extern int update_resv(resv_desc_msg_t *resv_desc_ptr) goto update_failure; } xfree(resv_ptr->partition); - resv_ptr->partition = xstrdup(resv_desc_ptr->partition); + resv_ptr->partition = resv_desc_ptr->partition; resv_desc_ptr->partition = NULL; /* Nothing left to free */ resv_ptr->part_ptr = part_ptr; }