summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPablo Neira Ayuso <pablo@netfilter.org>2017-05-26 11:49:16 +0100
committerPablo Neira Ayuso <pablo@netfilter.org>2017-05-26 12:49:16 +0200
commit255bd983fc9134489de7904ec09f09609607e540 (patch)
tree89ab934ddfd79b60ed02f9381f8b9343410d5463
parent79ade4acce376bb24e17ee5c42ac9cc3063b1e6f (diff)
segtree: reset element size counter before adding intervals to set
Otherwise we get double the real size in terms of set elements during the interval expansion to individual elements. Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
-rw-r--r--src/segtree.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/segtree.c b/src/segtree.c
index 8df82a80..15e8849c 100644
--- a/src/segtree.c
+++ b/src/segtree.c
@@ -552,6 +552,7 @@ int set_to_intervals(struct list_head *errs, struct set *set,
return -1;
segtree_linearize(&list, set, init, &tree, add);
+ init->size = 0;
list_for_each_entry_safe(ei, next, &list, list) {
if (segtree_debug()) {
pr_gmp_debug("list: [%.*Zx %.*Zx]\n",
@@ -566,6 +567,7 @@ int set_to_intervals(struct list_head *errs, struct set *set,
expr_print(init);
pr_gmp_debug("\n");
}
+
return 0;
}