diff options
author | Sean Bright <sean@malleable.com> | 2011-05-04 16:17:14 +0000 |
---|---|---|
committer | Sean Bright <sean@malleable.com> | 2011-05-04 16:17:14 +0000 |
commit | 51fc64d13a586dc5d00174512af74eb6689deb57 (patch) | |
tree | 06e126749573c197cc56f97ca0edf0415dfc6924 /apps | |
parent | 34734f727fcf72cec6986d20f6a6716ea2373814 (diff) |
Merged revisions 316709 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
................
r316709 | seanbright | 2011-05-04 12:15:32 -0400 (Wed, 04 May 2011) | 22 lines
Merged revisions 316708 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2
................
r316708 | seanbright | 2011-05-04 12:10:59 -0400 (Wed, 04 May 2011) | 15 lines
Merged revisions 316707 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r316707 | seanbright | 2011-05-04 12:08:50 -0400 (Wed, 04 May 2011) | 8 lines
If sox fails when processing a voicemail, don't delete the original file.
(closes issue #18111)
Reported by: sysreq
Patches:
issue18111_trunk.patch uploaded by seanbright (license 71)
Tested by: seanbright
........
................
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@316711 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'apps')
-rw-r--r-- | apps/app_voicemail.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/apps/app_voicemail.c b/apps/app_voicemail.c index 81387429d..a61673802 100644 --- a/apps/app_voicemail.c +++ b/apps/app_voicemail.c @@ -4734,6 +4734,7 @@ static int add_email_attachment(FILE *p, struct ast_vm_user *vmu, char *format, char fname[256]; char tmpcmd[256]; int tmpfd = -1; + int soxstatus = 0; /* Eww. We want formats to tell us their own MIME type */ char *ctype = (!strcasecmp(format, "ogg")) ? "application/" : "audio/x-"; @@ -4745,7 +4746,6 @@ static int add_email_attachment(FILE *p, struct ast_vm_user *vmu, char *format, chmod(newtmp, VOICEMAIL_FILE_MODE & ~my_umask); ast_debug(3, "newtmp: %s\n", newtmp); if (tmpfd > -1) { - int soxstatus; snprintf(tmpcmd, sizeof(tmpcmd), "sox -v %.4f %s.%s %s.%s", vmu->volgain, attach, format, newtmp, format); if ((soxstatus = ast_safe_system(tmpcmd)) == 0) { attach = newtmp; @@ -4773,7 +4773,9 @@ static int add_email_attachment(FILE *p, struct ast_vm_user *vmu, char *format, if (last) fprintf(p, ENDL ENDL "--%s--" ENDL "." ENDL, bound); if (tmpfd > -1) { - unlink(fname); + if (soxstatus == 0) { + unlink(fname); + } close(tmpfd); unlink(newtmp); } |