diff --git a/apps/app_queue.c b/apps/app_queue.c
index 255da9cede56e1a8c42b9f91f2531bdce543d80c..5812180430d5dd73e13cade73a74aae7043d19b2 100644
--- a/apps/app_queue.c
+++ b/apps/app_queue.c
@@ -1600,6 +1600,11 @@ static int ring_entry(struct queue_ent *qe, struct callattempt *tmp, int *busies
 			ast_cdr_busy(qe->chan->cdr);
 		tmp->stillgoing = 0;
 		update_dial_status(qe->parent, tmp->member, status);
+
+		ast_mutex_lock(&qe->parent->lock);
+		qe->parent->rrpos++;
+		ast_mutex_unlock(&qe->parent->lock);
+
 		(*busies)++;
 		return 0;
 	} else if (status != tmp->oldstatus)