aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjeremy <jeremy@f38db490-d61c-443f-a65b-d21fe96a405b>2004-01-13 00:35:45 +0000
committerjeremy <jeremy@f38db490-d61c-443f-a65b-d21fe96a405b>2004-01-13 00:35:45 +0000
commit779fef4eb7172741971459d3de387ffe1b618e40 (patch)
treecf2c0910ac3eb21fc7196ee55ac14d4a66942495
parent670486a281a2c1ff37f6151b41261ae5d394be61 (diff)
Fix show voicemail users for <context>. Bugs #820
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@1994 f38db490-d61c-443f-a65b-d21fe96a405b
-rwxr-xr-xapps/app_voicemail.c21
1 files changed, 12 insertions, 9 deletions
diff --git a/apps/app_voicemail.c b/apps/app_voicemail.c
index c1902a036..9b36e195a 100755
--- a/apps/app_voicemail.c
+++ b/apps/app_voicemail.c
@@ -3051,16 +3051,19 @@ static int handle_show_voicemail_users(int fd, int argc, char *argv[])
struct dirent *vment;
int vmcount = 0;
char count[12];
- make_dir(dirname, 255, vmu->context, vmu->mailbox, "INBOX");
- if ((vmdir = opendir(dirname))) {
- /* No matter what the format of VM, there will always be a .txt file for each message. */
- while ((vment = readdir(vmdir)))
- if (!strncmp(vment->d_name + 7,".txt",4))
- vmcount++;
- closedir(vmdir);
+
+ if ((argc == 3) || ((argc == 5) && !strcmp(argv[4],vmu->context))) {
+ make_dir(dirname, 255, vmu->context, vmu->mailbox, "INBOX");
+ if ((vmdir = opendir(dirname))) {
+ /* No matter what the format of VM, there will always be a .txt file for each message. */
+ while ((vment = readdir(vmdir)))
+ if (!strncmp(vment->d_name + 7,".txt",4))
+ vmcount++;
+ closedir(vmdir);
+ }
+ snprintf(count,11,"%d",vmcount);
+ ast_cli(fd, output_format, vmu->context, vmu->mailbox, vmu->fullname, vmu->zonetag, count);
}
- snprintf(count,11,"%d",vmcount);
- ast_cli(fd, output_format, vmu->context, vmu->mailbox, vmu->fullname, vmu->zonetag, count);
vmu = vmu->next;
}
} else {