diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index 667f0cfae27c4103df85619e6d98350feb46034c..2f03ade0ea17299cf549624cc88202a0a03ef7a0 100644
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -5936,13 +5936,11 @@ static enum parse_register_result parse_register_contact(struct sip_pvt *pvt, st
 	   it
 	*/
 	if (ast_strlen_zero(c) && ast_strlen_zero(expires)) {
+		/* If we have an active registration, tell them when the registration is going to expire */
 		if ((p->expire > -1) && !ast_strlen_zero(p->fullcontact)) {
-			/* tell them when the registration is going to expire */
 			pvt->expiry = ast_sched_when(sched, p->expire);
-			return PARSE_REGISTER_QUERY;
-		} else {
-			return PARSE_REGISTER_FAILED;
-		}
+		} 
+		return PARSE_REGISTER_QUERY;
 	} else if (!strcasecmp(c, "*") || !expiry) {	/* Unregister this peer */
 		/* This means remove all registrations and return OK */
 		memset(&p->addr, 0, sizeof(p->addr));