From b15f499bd7c7d4167cff98ff4eca057ce371e083 Mon Sep 17 00:00:00 2001 From: mmichelson Date: Thu, 9 Aug 2007 23:47:00 +0000 Subject: Improved a bit of logic regarding comma-separated mailboxes in has_voicemail. Also added some braces to some compound if statements since unbraced if statements scare me in general. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@78907 f38db490-d61c-443f-a65b-d21fe96a405b --- apps/app_voicemail.c | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) (limited to 'apps/app_voicemail.c') diff --git a/apps/app_voicemail.c b/apps/app_voicemail.c index 8650e3173..403e9b2d1 100644 --- a/apps/app_voicemail.c +++ b/apps/app_voicemail.c @@ -2515,12 +2515,14 @@ static int inboxcount(const char *mailbox_context, int *newmsgs, int *oldmsgs) context = "default"; mailboxnc = (char *)mailbox_context; } - if (newmsgs) + if (newmsgs) { if((*newmsgs = messagecount(context, mailboxnc, "INBOX")) < 0) return -1; - if (oldmsgs) + } + if (oldmsgs) { if((*oldmsgs = messagecount(context, mailboxnc, "Old")) < 0) return -1; + } return 0; } @@ -2530,9 +2532,13 @@ static int has_voicemail(const char *mailbox, const char *folder) char tmp[256], *tmp2, *mbox, *context; ast_copy_string(tmp, mailbox, sizeof(tmp)); tmp2 = tmp; - while (strcmp((mbox = strsep(&tmp2, ",")), mailbox)) { - if (has_voicemail(mbox, folder)) - return 1; + if(strchr(tmp2, ',')) { + while((mbox = strsep(&tmp2, ","))) { + if(!ast_strlen_zero(mbox)) { + if (has_voicemail(mbox, folder)) + return 1; + } + } } if ((context= strchr(tmp, '@'))) *context++ = '\0'; -- cgit v1.2.3