summaryrefslogtreecommitdiff
path: root/epan/dissectors/packet-h248.c
diff options
context:
space:
mode:
authorEvan Huus <eapache@gmail.com>2013-07-06 18:14:04 +0000
committerEvan Huus <eapache@gmail.com>2013-07-06 18:14:04 +0000
commit74e1b830a9cffe731da786fc3cf9f269601fda5a (patch)
tree749a70b22525838e38dc1eaf95d472f5d9a8b2e7 /epan/dissectors/packet-h248.c
parent32088c9e6e4af9f5952bc402b44cdde0e6c695d1 (diff)
downloadwireshark-74e1b830a9cffe731da786fc3cf9f269601fda5a.tar.gz
Use epan-scoped memory for h248 packages. Fixes another ~24KB of leaks.
svn path=/trunk/; revision=50414
Diffstat (limited to 'epan/dissectors/packet-h248.c')
-rw-r--r--epan/dissectors/packet-h248.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/epan/dissectors/packet-h248.c b/epan/dissectors/packet-h248.c
index 3188591a37..19235cef82 100644
--- a/epan/dissectors/packet-h248.c
+++ b/epan/dissectors/packet-h248.c
@@ -1386,7 +1386,7 @@ void h248_register_package(const h248_package_t* pkg, pkg_reg_action reg_action)
*/
packages = g_tree_new(comparePkgID); /* init tree if no entries */
while (base_package_name_vals[i].strptr != NULL) {
- pkg_found = g_new0(h248_package_t, 1); /* create a h248 package structure */
+ pkg_found = wmem_new0(wmem_epan_scope(), h248_package_t); /* create a h248 package structure */
pkg_found->id = base_package_name_vals[i].value;
vst = (value_string *)wmem_alloc0(wmem_epan_scope(), sizeof(value_string)*2);
vst[0].strptr = base_package_name_vals[i].strptr;
@@ -1436,7 +1436,7 @@ void h248_register_package(const h248_package_t* pkg, pkg_reg_action reg_action)
pkg_default = is_pkg_default(pkg->id);
if (((reg_action==REPLACE_PKG) || (reg_action==ADD_PKG)) && pkg_default) {
/* add/replace in tree */
- s_pkg = g_new0(s_h248_package_t,1);
+ s_pkg = wmem_new0(wmem_epan_scope(), s_h248_package_t);
s_pkg->is_default = FALSE;
s_pkg->pkg = (h248_package_t *)pkg;
g_tree_replace(packages, GINT_TO_POINTER(pkg->id), (gpointer)s_pkg);
@@ -1445,7 +1445,7 @@ void h248_register_package(const h248_package_t* pkg, pkg_reg_action reg_action)
if(pkg_default) reg_action = MERGE_PKG_HIGH; /* always make new package overide default */
s_pkg = s_find_package_id(pkg->id);
if (s_pkg == NULL) { /* no need to merge - package not in tree */
- s_pkg = g_new0(s_h248_package_t,1);
+ s_pkg = wmem_new0(wmem_epan_scope(), s_h248_package_t);
s_pkg->is_default = FALSE;
s_pkg->pkg = (h248_package_t *)pkg;
g_tree_insert(packages, GINT_TO_POINTER(pkg->id), (gpointer)s_pkg);