diff --git a/apps/app_dictate.c b/apps/app_dictate.c
index 661a4a237395f6c68434d96a6d82984494142b75..55d8ba96ccb15ffca57b0f088372ef74f6ac4fee 100644
--- a/apps/app_dictate.c
+++ b/apps/app_dictate.c
@@ -267,7 +267,8 @@ static int dictate_exec(struct ast_channel *chan, void *data)
 						if (lastop != DFLAG_PLAY) {
 							lastop = DFLAG_PLAY;
 							ast_closestream(fs);
-							fs = ast_openstream(chan, path, chan->language);
+							if (!(fs = ast_openstream(chan, path, chan->language)))
+								break;
 							ast_seekstream(fs, samples, SEEK_SET);
 							chan->stream = NULL;
 						}