From 94148095b8f1ea6d3ddfbdac7d2ae2ef6735e6d3 Mon Sep 17 00:00:00 2001
From: Anthony Minessale <anthm@freeswitch.org>
Date: Mon, 27 Jun 2011 11:32:52 -0500
Subject: [PATCH] parse events and messages in channel_ready

---
 src/switch_channel.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/switch_channel.c b/src/switch_channel.c
index 38f177234e..f236014887 100644
--- a/src/switch_channel.c
+++ b/src/switch_channel.c
@@ -1693,8 +1693,6 @@ SWITCH_DECLARE(int) switch_channel_test_ready(switch_channel_t *channel, switch_
 
 	switch_assert(channel != NULL);
 
-	switch_ivr_parse_all_messages(channel->session);
-
 	if (check_media) {
 		ret = ((switch_channel_test_flag(channel, CF_ANSWERED) ||
 				switch_channel_test_flag(channel, CF_EARLY_MEDIA)) && !switch_channel_test_flag(channel, CF_PROXY_MODE) &&
@@ -1716,6 +1714,10 @@ SWITCH_DECLARE(int) switch_channel_test_ready(switch_channel_t *channel, switch_
 		ret++;
 	}
 
+	if (ret) {
+		switch_ivr_parse_all_events(channel->session);
+	}
+
 	return ret;
 }