diff --git a/ChangeLog b/ChangeLog
index d88e4583c287473a01c88ac4a3bd8732f6c8bbd4..376f200be14395438043c9608e8c2c5124473a28 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2005-11-29  Josh Roberson <josh@asteriasgi.com>
+	
+	* apps/app_voicemail.c: Only look in 'default' context when no context defined to VoiceMailMain(). (issue #5887)
+
 2005-11-25  Russell Bryant  <russell@digium.com>
 
 	* apps/app_dial.c: Properly duplicate the string for ANI (issue #5850)
diff --git a/UPGRADE.txt b/UPGRADE.txt
index b17b16ddec2674c390e6ea1833a977f5f7ba4e34..db9eab84556600e44be674c98a1075b2d3a94c89 100644
--- a/UPGRADE.txt
+++ b/UPGRADE.txt
@@ -131,6 +131,10 @@ Applications:
   'mailbox options' menu, and 'change your password' option has been
   moved to option 5.
 
+* The application VoiceMailMain now only matches the 'default' context if
+  none is specified in the arguments.  (This was the previously 
+  documented behavior, however, we didn't follow that behavior.)
+
 Queues:
 
 * A queue is now considered empty not only if there are no members but if
diff --git a/apps/app_voicemail.c b/apps/app_voicemail.c
index 2f9c515c84356f15e444e6298b81913ebe4dd632..2dab9fac0f09c20938b5891925c3a2b373441d23 100644
--- a/apps/app_voicemail.c
+++ b/apps/app_voicemail.c
@@ -573,8 +573,12 @@ static struct ast_vm_user *find_user(struct ast_vm_user *ivm, const char *contex
 	struct ast_vm_user *vmu=NULL, *cur;
 	ast_mutex_lock(&vmlock);
 	cur = users;
+
+	if (!context)
+		context = "default";
+
 	while (cur) {
-		if ((!context || !strcasecmp(context, cur->context)) &&
+		if ((!strcasecmp(context, cur->context)) &&
 			(!strcasecmp(mailbox, cur->mailbox)))
 				break;
 		cur=cur->next;
@@ -4985,7 +4989,7 @@ static int vm_authenticate(struct ast_channel *chan, char *mailbox, int mailbox_
 			valid++;
 		else {
 			if (option_verbose > 2)
-				ast_verbose( VERBOSE_PREFIX_3 "Incorrect password '%s' for user '%s' (context = %s)\n", password, mailbox, context ? context : "<any>");
+				ast_verbose( VERBOSE_PREFIX_3 "Incorrect password '%s' for user '%s' (context = %s)\n", password, mailbox, context ? context : "default");
 			if (!ast_strlen_zero(prefix))
 				mailbox[0] = '\0';
 		}