diff --git a/NEWS b/NEWS
index 3bcb267fe0038ba68945f6b678bf816d80fd3565..76b606ee4c4d3a3c83a0d8c8caeb273b87fb5914 100644
--- a/NEWS
+++ b/NEWS
@@ -447,6 +447,7 @@ documents those changes that are of interest to users and administrators.
  -- Fix sbatch --wait to stop waiting after job is gone from memory.
  -- Fix memory leak of MailDomain configuration string when slurmctld daemon is
     reconfigured.
+ -- Fix to properly remove extern steps from the starting_steps list.
 
 * Changes in Slurm 17.02.9
 ==========================
diff --git a/src/slurmd/slurmd/req.c b/src/slurmd/slurmd/req.c
index 5bd3c0c6f78d064fae4a48936762c671e4083d9b..f657379b7364ad82442b78f68a3699a9594ebec7 100644
--- a/src/slurmd/slurmd/req.c
+++ b/src/slurmd/slurmd/req.c
@@ -6145,11 +6145,8 @@ static int _compare_starting_steps(void *listentry, void *key)
 	starting_step_t *step0 = (starting_step_t *)listentry;
 	starting_step_t *step1 = (starting_step_t *)key;
 
-	if (step1->step_id != NO_VAL)
-		return (step0->job_id  == step1->job_id &&
-			step0->step_id == step1->step_id);
-	else
-		return (step0->job_id  == step1->job_id);
+	return (step0->job_id == step1->job_id &&
+		step0->step_id == step1->step_id);
 }