aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--epan/proto.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/epan/proto.c b/epan/proto.c
index 683bafbd40..2a156b8d84 100644
--- a/epan/proto.c
+++ b/epan/proto.c
@@ -1113,15 +1113,12 @@ static void
ptvcursor_new_subtree_levels(ptvcursor_t *ptvc)
{
subtree_lvl *pushed_tree;
- size_t pushed_tree_len = sizeof(subtree_lvl) * ptvc->pushed_tree_max;
DISSECTOR_ASSERT(ptvc->pushed_tree_max <= SUBTREE_MAX_LEVELS-SUBTREE_ONCE_ALLOCATION_NUMBER);
ptvc->pushed_tree_max += SUBTREE_ONCE_ALLOCATION_NUMBER;
- pushed_tree = (subtree_lvl *)wmem_alloc(wmem_packet_scope(), sizeof(subtree_lvl) * ptvc->pushed_tree_max);
+ pushed_tree = (subtree_lvl *)wmem_realloc(wmem_packet_scope(), (void *)ptvc->pushed_tree, sizeof(subtree_lvl) * ptvc->pushed_tree_max);
DISSECTOR_ASSERT(pushed_tree != NULL);
- if (ptvc->pushed_tree)
- memcpy(pushed_tree, ptvc->pushed_tree, pushed_tree_len);
ptvc->pushed_tree = pushed_tree;
}