diff --git a/apps/app_voicemail.c b/apps/app_voicemail.c index 2eaba17621aacc537e29cfdad61916d508d5eb7e..4cf8fca067accea978901f1b3a0f8190ec6fc0de 100644 --- a/apps/app_voicemail.c +++ b/apps/app_voicemail.c @@ -4742,6 +4742,7 @@ static int vm_tempgreeting(struct ast_channel *chan, struct ast_vm_user *vmu, st while (cmd >= 0 && cmd != 't') { if (cmd) retries = 0; + RETRIEVE(prefile, -1); if (ast_fileexists(prefile, NULL, NULL) <= 0) { play_record_review(chan, "vm-rec-temp", prefile, maxgreet, fmtc, 0, vmu, &duration, NULL, record_gain); cmd = 't'; @@ -4751,7 +4752,7 @@ static int vm_tempgreeting(struct ast_channel *chan, struct ast_vm_user *vmu, st cmd = play_record_review(chan, "vm-rec-temp", prefile, maxgreet, fmtc, 0, vmu, &duration, NULL, record_gain); break; case '2': - ast_filedelete(prefile, NULL); + DELETE(prefile, -1, prefile); ast_play_and_wait(chan, "vm-tempremoved"); cmd = 't'; break; @@ -4770,6 +4771,7 @@ static int vm_tempgreeting(struct ast_channel *chan, struct ast_vm_user *vmu, st cmd = 't'; } } + DISPOSE(prefile, -1); } if (cmd == 't') cmd = 0;