diff options
author | Dario Lombardo <lomato@gmail.com> | 2017-02-01 15:25:16 +0100 |
---|---|---|
committer | Michael Mann <mmann78@netscape.net> | 2017-02-01 16:14:01 +0000 |
commit | 96b8da738d497c1eaea98762aca277a3f3493851 (patch) | |
tree | 96e8393b99a3237b40348b677c76fd0df9ae044c /epan/dissectors/packet-h248.c | |
parent | add6cb3976a479e406eb9d0a1128ddabf9a1db9b (diff) | |
download | wireshark-96b8da738d497c1eaea98762aca277a3f3493851.tar.gz |
h248: convert GTree to wmem_tree.
Change-Id: Ia8d1a7ca4ce7e8754ab97ffe5f6e11181f08b264
Reviewed-on: https://code.wireshark.org/review/19905
Reviewed-by: Michael Mann <mmann78@netscape.net>
Diffstat (limited to 'epan/dissectors/packet-h248.c')
-rw-r--r-- | epan/dissectors/packet-h248.c | 24 |
1 files changed, 10 insertions, 14 deletions
diff --git a/epan/dissectors/packet-h248.c b/epan/dissectors/packet-h248.c index e35e98f9f7..4df53f50cf 100644 --- a/epan/dissectors/packet-h248.c +++ b/epan/dissectors/packet-h248.c @@ -1968,7 +1968,7 @@ static const h248_pkg_param_t no_param = { 0, &hf_h248_param, h248_param_uint_it static const h248_pkg_evt_t no_event = { 0, &hf_h248_no_evt, &ett_h248_no_evt, NULL, NULL }; const h248_package_t *find_package_id(guint16 pkgid); -static GTree* packages = NULL; +static wmem_tree_t* packages = NULL; extern void h248_param_PkgdName(proto_tree* tree, tvbuff_t* tvb, packet_info* pinfo , int hfid _U_, h248_curr_info_t* u1 _U_, void* u2 _U_) { tvbuff_t *new_tvb = NULL; @@ -2102,7 +2102,7 @@ static int dissect_h248_ctx_id(gboolean implicit_tag, packet_info *pinfo, proto_ static s_h248_package_t *s_find_package_id(guint16 pkgid) { s_h248_package_t *s_pkg = NULL; - s_pkg = (s_h248_package_t *)g_tree_lookup(packages, GUINT_TO_POINTER((guint32)(pkgid))); + s_pkg = (s_h248_package_t *)wmem_tree_lookup32(packages, (guint32)(pkgid)); return s_pkg; } @@ -2113,13 +2113,9 @@ const h248_package_t *find_package_id(guint16 pkgid) { return s_pkg->pkg; } -static gint32 comparePkgID(gconstpointer a, gconstpointer b) { - return GPOINTER_TO_UINT(b) - GPOINTER_TO_UINT(a); -} - static gboolean is_pkg_default(guint16 pkgid) { s_h248_package_t *s_pkg = NULL; - s_pkg = (s_h248_package_t *)g_tree_lookup(packages, GUINT_TO_POINTER((guint32)(pkgid))); + s_pkg = (s_h248_package_t *)wmem_tree_lookup32(packages, (guint32)(pkgid)); if(! s_pkg ) return TRUE; return s_pkg->is_default; } @@ -2133,7 +2129,7 @@ void h248_register_package(h248_package_t* pkg, pkg_reg_action reg_action) { if (! packages) { /* no packaegs are yet registerd so create tree and add default packages to tree */ - packages = g_tree_new(comparePkgID); /* init tree if no entries */ + packages = wmem_tree_new(wmem_epan_scope()); /* init tree if no entries */ while (base_package_name_vals[i].strptr != NULL) { pkg_found = wmem_new0(wmem_epan_scope(), h248_package_t); /* create a h248 package structure */ pkg_found->id = base_package_name_vals[i].value; @@ -2178,7 +2174,7 @@ void h248_register_package(h248_package_t* pkg, pkg_reg_action reg_action) { s_pkg = wmem_new0(wmem_epan_scope(), s_h248_package_t); s_pkg->is_default = TRUE; s_pkg->pkg = pkg_found; - g_tree_insert(packages, GINT_TO_POINTER(pkg_found->id), (gpointer)s_pkg); + wmem_tree_insert32(packages, pkg_found->id, s_pkg); i++; }; pkg_found = NULL; /* reset pointer */ @@ -2189,7 +2185,7 @@ void h248_register_package(h248_package_t* pkg, pkg_reg_action reg_action) { 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); + wmem_tree_insert32(packages, pkg->id, s_pkg); return; }; if(pkg_default) reg_action = MERGE_PKG_HIGH; /* always make new package overide default */ @@ -2198,7 +2194,7 @@ void h248_register_package(h248_package_t* pkg, pkg_reg_action reg_action) { 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); + wmem_tree_insert32(packages, pkg->id, s_pkg); return; } pkg_found = s_pkg->pkg; @@ -6086,7 +6082,7 @@ dissect_h248_SigParameterV1(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int of /*--- End of included file: packet-h248-fn.c ---*/ -#line 2164 "./asn1/h248/packet-h248-template.c" +#line 2160 "./asn1/h248/packet-h248-template.c" static int dissect_h248_tpkt(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U_) { dissect_tpkt_encap(tvb, pinfo, tree, h248_desegment, h248_handle); @@ -7511,7 +7507,7 @@ void proto_register_h248(void) { NULL, HFILL }}, /*--- End of included file: packet-h248-hfarr.c ---*/ -#line 2332 "./asn1/h248/packet-h248-template.c" +#line 2328 "./asn1/h248/packet-h248-template.c" GCP_HF_ARR_ELEMS("h248",h248_arrel) @@ -7677,7 +7673,7 @@ void proto_register_h248(void) { &ett_h248_SigParameterV1, /*--- End of included file: packet-h248-ettarr.c ---*/ -#line 2350 "./asn1/h248/packet-h248-template.c" +#line 2346 "./asn1/h248/packet-h248-template.c" }; static ei_register_info ei[] = { |