diff --git a/apps/app_voicemail.c b/apps/app_voicemail.c
index b7875d0808fbd5b06b77b8d78a320f407c79c45d..d14884931f4d0469247b7a8ce545b46363e4bd9e 100755
--- a/apps/app_voicemail.c
+++ b/apps/app_voicemail.c
@@ -519,8 +519,9 @@ static int leave_voicemail(struct ast_channel *chan, char *ext, int silent, int
 				return -1;
 			}
 		} else if (silent == '0') {
-			strncpy(chan->exten, "0", sizeof(chan->exten) - 1);
+			strncpy(chan->exten, "o", sizeof(chan->exten) - 1);
 			chan->priority = 0;
+			ast_softhangup(chan, AST_SOFTHANGUP_ASYNCGOTO);
 			free(copy);
 			return 0;
 		}