app_voicemail: Fix enhancement that allowed multiple recipients in To: header

An issue existed in r420577, which added multiple recipients to voicemail
emails. The patch, when looking at the intended recipients, looked ahead for
the '|' character inside a while loop which already had pulled out the
appropriate field parsing on the '|' character. This would cause it to skip
the recipients.

This patch fixes it such that it relies completely on the while loop to parse
through the e-mail fields.

Note that the original author of the patch looked at this fix and approved it.

ASTERISK-24250 #close
Reported by: abelbeck
patches:
  voicemail-420577-to-comma-fix.diff uploaded by abelbeck (License 5903)
........

Merged revisions 427585 from http://svn.asterisk.org/svn/asterisk/branches/13


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@427586 65c4cc65-6c06-0410-ace0-fbb531ad65f3
changes/42/42/1
Matthew Jordan 11 years ago
parent 9a1ab5d548
commit 08d773532b

@ -5063,7 +5063,7 @@ static void make_email_file(FILE *p,
fprintf(p, "To:");
first_line = 1;
while ((email = strsep(&emailsbuf, "|"))) {
char *next = strchr(S_OR(emailsbuf, ""), '|');
char *next = emailsbuf;
if (check_mime(vmu->fullname)) {
char *ptr;
ast_str_encode_mime(&str2, 0, vmu->fullname, first_line ? strlen("To: ") : 0, strlen(email) + 3 + (next ? strlen(",") : 0));

Loading…
Cancel
Save