From 060d86c02937feefb9494bfda97e6662484915eb Mon Sep 17 00:00:00 2001
From: Brian West <brian@freeswitch.org>
Date: Sat, 12 Jul 2008 15:27:34 +0000
Subject: [PATCH] make sure the bug is read before we start to read from it
 otherwise we segfault

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@9002 d0543943-73ff-0310-b7d9-9358b9ac24b2
---
 src/switch_ivr_async.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/src/switch_ivr_async.c b/src/switch_ivr_async.c
index db0917ee2b..8d6fdf497b 100644
--- a/src/switch_ivr_async.c
+++ b/src/switch_ivr_async.c
@@ -1637,9 +1637,11 @@ static switch_bool_t speech_callback(switch_media_bug_t *bug, void *user_data, s
 					return SWITCH_FALSE;
 				}
 				if (switch_core_asr_check_results(sth->ah, &flags) == SWITCH_STATUS_SUCCESS) {
-					switch_mutex_lock(sth->mutex);
-					switch_thread_cond_signal(sth->cond);
-					switch_mutex_unlock(sth->mutex);
+					if (sth->mutex && sth->cond && sth->ready) {
+						switch_mutex_lock(sth->mutex);
+						switch_thread_cond_signal(sth->cond);
+						switch_mutex_unlock(sth->mutex);
+					}
 				}
 			}
 		}