diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index e7de57927f5d8d69be2edae5b3f9219ca17bf5fe..38b390585925c398e727ee0ca391c46a4567d95d 100644
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -16744,6 +16744,9 @@ static char *complete_sip_user(const char *word, int state)
 		}
 		ao2_unlock(user);
 		unref_peer(user, "complete sip user");
+		if (result) {
+			break;
+		}
 	}
 	ao2_iterator_destroy(&user_iter);
 	return result;