aboutsummaryrefslogtreecommitdiffstats
path: root/apps/app_voicemail.c
diff options
context:
space:
mode:
authormmichelson <mmichelson@f38db490-d61c-443f-a65b-d21fe96a405b>2008-12-17 17:56:53 +0000
committermmichelson <mmichelson@f38db490-d61c-443f-a65b-d21fe96a405b>2008-12-17 17:56:53 +0000
commit0411f1c19c95076b06563cee1af5b94a8af7c2dd (patch)
tree57ee806cdc5074e03987a782b7320949ba850cf5 /apps/app_voicemail.c
parentb87e30b3187703ae4d8006ea3d515ff9854fe73d (diff)
Merged revisions 165142-165143 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk ........ r165142 | mmichelson | 2008-12-17 11:52:50 -0600 (Wed, 17 Dec 2008) | 10 lines Use the create_vm_state_from_user function in a place where it was not being used before. Also, I've moved the urgent folder check in messagecount() up a bit so that the flow is a bit better. This was something I noticed while taking a look at issue #13973, although I don't think this is the underlying cause of the issue. ........ r165143 | mmichelson | 2008-12-17 11:53:37 -0600 (Wed, 17 Dec 2008) | 3 lines And actually assign the function to a pointer... ........ git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.1@165146 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'apps/app_voicemail.c')
-rw-r--r--apps/app_voicemail.c25
1 files changed, 7 insertions, 18 deletions
diff --git a/apps/app_voicemail.c b/apps/app_voicemail.c
index d0bc8623e..7eff59772 100644
--- a/apps/app_voicemail.c
+++ b/apps/app_voicemail.c
@@ -1593,6 +1593,12 @@ static int messagecount(const char *context, const char *mailbox, const char *fo
int fold = folder_int(folder);
int urgent = 0;
+ /* If URGENT, then look at INBOX */
+ if (fold == 11) {
+ fold = NEW_FOLDER;
+ urgent = 1;
+ }
+
if (ast_strlen_zero(mailbox))
return 0;
@@ -1640,25 +1646,8 @@ static int messagecount(const char *context, const char *mailbox, const char *fo
vms_p = get_vm_state_by_mailbox(mailbox, context, 0);
}
- /* If URGENT, then look at INBOX */
- if (fold == 11) {
- fold = NEW_FOLDER;
- urgent = 1;
- }
-
if (!vms_p) {
- ast_debug(3,"Adding new vmstate for %s\n",vmu->imapuser);
- if (!(vms_p = ast_calloc(1, sizeof(*vms_p)))) {
- return -1;
- }
- ast_copy_string(vms_p->imapuser,vmu->imapuser, sizeof(vms_p->imapuser));
- ast_copy_string(vms_p->username, mailbox, sizeof(vms_p->username)); /* save for access from interactive entry point */
- vms_p->mailstream = NIL; /* save for access from interactive entry point */
- ast_debug(3, "Copied %s to %s\n",vmu->imapuser,vms_p->imapuser);
- vms_p->updated = 1;
- ast_copy_string(vms_p->curbox, mbox(fold), sizeof(vms_p->curbox));
- init_vm_state(vms_p);
- vmstate_insert(vms_p);
+ vms_p = create_vm_state_from_user(vmu);
}
ret = init_mailstream(vms_p, fold);
if (!vms_p->mailstream) {