diff --git a/apps/app_voicemail.c b/apps/app_voicemail.c
index 750bc5a414d6584294dc0ae99a04e1bba4d571f3..7943cf072e7e34ceaef26a1a008766488bddff0b 100644
--- a/apps/app_voicemail.c
+++ b/apps/app_voicemail.c
@@ -8570,8 +8570,11 @@ static int play_record_review(struct ast_channel *chan, char *playfile, char *re
 				if (option_verbose > 2)
 					ast_verbose(VERBOSE_PREFIX_3 "Saving message as is\n");
 				ast_stream_and_wait(chan, "vm-msgsaved", "");
-				STORE(recordfile, vmu->mailbox, vmu->context, -1, chan, vmu, fmt, *duration, vms);
-				DISPOSE(recordfile, -1);
+				if (!outsidecaller)
+				{
+					STORE(recordfile, vmu->mailbox, vmu->context, -1, chan, vmu, fmt, *duration, vms);
+					DISPOSE(recordfile, -1);
+				}
 				cmd = 't';
 				return res;
 			}