From: Jun Wang Date: Mon, 23 Mar 2015 02:27:08 +0000 (+0000) Subject: FS-7383 #resolve X-Git-Tag: v1.4.19~6^2~82^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=dee980d2ddf2afde01ab044b1285b05b6a085dba;p=thirdparty%2Ffreeswitch.git FS-7383 #resolve --- diff --git a/libs/spandsp/src/make_at_dictionary.c b/libs/spandsp/src/make_at_dictionary.c index 6259207368..a34dd6f3a3 100644 --- a/libs/spandsp/src/make_at_dictionary.c +++ b/libs/spandsp/src/make_at_dictionary.c @@ -605,6 +605,33 @@ static void dump_trie(void) } /*- End of function --------------------------------------------------------*/ + +static void trie_recursive_free(trie_node_t *t) +{ + int i; + if (t) + { + if (t->first <= t->last) + { + for (i = t->first; i <= t->last; i++) + trie_recursive_free(t->child_list[i]); + } + free(t); + } +} +/*- End of function --------------------------------------------------------*/ + +static void trie_free(trie_t *s) +{ + if(s) + { + if(s->root) + trie_recursive_free(s->root); + free(s); + } +} +/*- End of function --------------------------------------------------------*/ + int main(int argc, char *argv[]) { trie_t *s; @@ -627,6 +654,8 @@ int main(int argc, char *argv[]) trie_recursive_build_packed_trie(s->root); dump_trie(); + + trie_free(s); return 0; }