diff --git a/src/api/step_ctx.c b/src/api/step_ctx.c
index 914b8543297565ef42ec06b517cfa6b2303753cc..c809049354b71a24c988a3e97aedc22ca0328d1d 100644
--- a/src/api/step_ctx.c
+++ b/src/api/step_ctx.c
@@ -89,6 +89,7 @@ _job_fake_cred(struct slurm_step_ctx_struct *ctx)
 	slurm_cred_arg_t arg;
 	uint32_t node_cnt = ctx->step_resp->step_layout->node_cnt;
 
+	memset(&arg, 0, sizeof(slurm_cred_arg_t));
 	arg.jobid          = ctx->job_id;
 	arg.stepid         = ctx->step_resp->job_step_id;
 	arg.uid            = ctx->user_id;
diff --git a/src/slurmd/slurmd/req.c b/src/slurmd/slurmd/req.c
index cceb99428982b81ad179e53e14099ab3eb3820ff..147f632a64553dd0cee3ca552fc9ab56e782d807 100644
--- a/src/slurmd/slurmd/req.c
+++ b/src/slurmd/slurmd/req.c
@@ -905,7 +905,6 @@ _check_job_credential(launch_tasks_request_msg_t *req, uid_t uid,
 			      " %m, but continuing anyway.");
 		}
 	}
-	req->job_core_spec = arg.job_core_spec;
 
 	/* If uid is the SlurmUser or root and the credential is bad,
 	 * then do not attempt validating the credential */
@@ -1082,6 +1081,7 @@ _check_job_credential(launch_tasks_request_msg_t *req, uid_t uid,
 		req->job_mem_lim *= job_cpus;
 	} else
 		req->job_mem_lim  = arg.job_mem_limit;
+	req->job_core_spec = arg.job_core_spec;
 	req->node_cpus = step_cpus;
 #if 0
 	info("%u.%u node_id:%d mem orig:%u cpus:%u limit:%u",