app_voicemail: Temp message left after review/hangup with ODBC/IMAP backend
authorMatthew Jordan <mjordan@digium.com>
Tue, 20 Jan 2015 02:33:24 +0000 (02:33 +0000)
committerMatthew Jordan <mjordan@digium.com>
Tue, 20 Jan 2015 02:33:24 +0000 (02:33 +0000)
When using ODBC or IMAP storage, temporary files created on the file system
must be disposed of using the DISPOSE macro. The DELETE macro will map to a
deletion function for the backend storage, but does not clean up any local
files created as a result of the operation.

When using voicemail with the operator and review options enabled, pressing
0 to enter the menu, followed by 1 to save the message, followed by any
other DTMF press to delete the message, will result in the temporary file
lingering on the file system.

This patch properly calls DISPOSE after the DELETE. This causes the local
file to be disposed of.

ASTERISK-24288 #close
Reported by: LEI FU
patches:
  voicemail_odbc_review_fix.diff uploaded by LEI FU (License 6640)
........

Merged revisions 430795 from http://svn.asterisk.org/svn/asterisk/branches/11
........

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

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@430797 65c4cc65-6c06-0410-ace0-fbb531ad65f3

apps/app_voicemail.c

index 6311263..86724f3 100644 (file)
@@ -15182,6 +15182,7 @@ static int play_record_review(struct ast_channel *chan, char *playfile, char *re
                                } else {
                                        ast_play_and_wait(chan, "vm-deleted");
                                        DELETE(tempfile, -1, tempfile, vmu);
+                                       DISPOSE(tempfile, -1);
                                        cmd = '0';
                                }
                        }