diff options
author | jeremy <jeremy@f38db490-d61c-443f-a65b-d21fe96a405b> | 2004-01-13 00:35:45 +0000 |
---|---|---|
committer | jeremy <jeremy@f38db490-d61c-443f-a65b-d21fe96a405b> | 2004-01-13 00:35:45 +0000 |
commit | 779fef4eb7172741971459d3de387ffe1b618e40 (patch) | |
tree | cf2c0910ac3eb21fc7196ee55ac14d4a66942495 | |
parent | 670486a281a2c1ff37f6151b41261ae5d394be61 (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-x | apps/app_voicemail.c | 21 |
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 { |