提交 2ace7bc7 authored 作者: Travis Cross's avatar Travis Cross

Fix memory leak in phrase macro playback

We were leaking memory when break_on_match was set or when we received
back SWITCH_STATUS_BREAK from a callee as we were failing to free
field_expanded_alloc.
上级 f83d6770
...@@ -317,13 +317,12 @@ SWITCH_DECLARE(switch_status_t) switch_ivr_phrase_macro_event(switch_core_sessio ...@@ -317,13 +317,12 @@ SWITCH_DECLARE(switch_status_t) switch_ivr_phrase_macro_event(switch_core_sessio
} }
switch_regex_safe_free(re); switch_regex_safe_free(re);
switch_safe_free(field_expanded_alloc);
if ((match && do_break && switch_true(do_break)) || status == SWITCH_STATUS_BREAK) { if ((match && do_break && switch_true(do_break)) || status == SWITCH_STATUS_BREAK) {
break; break;
} }
switch_safe_free(field_expanded_alloc);
if (status != SWITCH_STATUS_SUCCESS) { if (status != SWITCH_STATUS_SUCCESS) {
done = 1; done = 1;
break; break;
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论