aboutsummaryrefslogtreecommitdiffstats
path: root/res/res_agi.c
diff options
context:
space:
mode:
authorfile <file@f38db490-d61c-443f-a65b-d21fe96a405b>2009-03-27 15:46:46 +0000
committerfile <file@f38db490-d61c-443f-a65b-d21fe96a405b>2009-03-27 15:46:46 +0000
commitaa844c8202b6b822fdce7143229e7613d3e7be90 (patch)
treedb1afc0b41a19025fa9f0d4952b959cc9a4f01e1 /res/res_agi.c
parent6f9402c7e6261a75c0cfb87262426a3dd5ed2816 (diff)
Fix speech structure leak in the AGI speech recognition integration.
The AGI dialplan applications did not destroy the speech structure automatically if it was not destroyed by the running AGI script. They will now do this. (issue LUMENVOX-15) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@184673 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'res/res_agi.c')
-rw-r--r--res/res_agi.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/res/res_agi.c b/res/res_agi.c
index 8a128e2a2..efd8549b3 100644
--- a/res/res_agi.c
+++ b/res/res_agi.c
@@ -737,6 +737,10 @@ static enum agi_result launch_asyncagi(struct ast_channel *chan, char *argv[], i
ast_frfree(f);
}
}
+
+ if (async_agi.speech) {
+ ast_speech_destroy(async_agi.speech);
+ }
quit:
/* notify manager users this channel cannot be
controlled anymore by Async AGI */
@@ -2929,6 +2933,9 @@ static enum agi_result run_agi(struct ast_channel *chan, char *request, AGI *agi
}
}
}
+ if (agi->speech) {
+ ast_speech_destroy(agi->speech);
+ }
/* Notify process */
if (send_sighup) {
if (pid > -1) {