diff --git a/src/slurmctld/proc_req.c b/src/slurmctld/proc_req.c
index be922deba3d141ce1e1c26c7ef3a0fdaba3fa3e7..89276f915b81e34c198e37ed1223382eab0b5405 100644
--- a/src/slurmctld/proc_req.c
+++ b/src/slurmctld/proc_req.c
@@ -1682,7 +1682,7 @@ static void _slurm_rpc_job_step_create(slurm_msg_t * msg)
 #ifdef HAVE_FRONT_END
 		if (step_rec->job_ptr->batch_host) {
 			job_step_resp.step_layout->front_end =
-				step_rec->job_ptr->batch_host;
+				xstrdup(step_rec->job_ptr->batch_host);
 		}
 #endif
 		job_step_resp.cred           = slurm_cred;