diff --git a/channels/chan_zap.c b/channels/chan_zap.c
index a3eb6eb116b21d70fed5e66f718927a7d63c6f7a..973a086bfe0f9c8c1a7fd620ff8d38834319438b 100755
--- a/channels/chan_zap.c
+++ b/channels/chan_zap.c
@@ -3678,7 +3678,7 @@ static void *ss_thread(void *data)
 				ast_dsp_digitmode(p->dsp,DSP_DIGITMODE_DTMF | p->dtmfrelax);
 		}
 		/* Wait for the first digit only if immediate=no */
-		if (!p->immediate)
+		if (((p->sig == SIG_EM) || (p->sig == SIG_EMWINK)) && !p->immediate)
 			/* Wait for the first digit (up to 5 seconds). */
 			res = ast_waitfordigit(chan,5000);
 		else res = 0;