diff -up bind-9.5.0-P1/lib/dns/iptable.c.rh457175 bind-9.5.0-P1/lib/dns/iptable.c --- bind-9.5.0-P1/lib/dns/iptable.c.rh457175 2008-01-21 22:02:24.000000000 +0100 +++ bind-9.5.0-P1/lib/dns/iptable.c 2008-07-31 16:10:46.000000000 +0200 @@ -117,16 +117,17 @@ dns_iptable_merge(dns_iptable_t *tab, dn if (node->data[0] && *(isc_boolean_t *) node->data[0] == ISC_TRUE) new_node->data[0] = &dns_iptable_neg; - else - new_node->data[0] = node->data[0]; if (node->data[1] && *(isc_boolean_t *) node->data[1] == ISC_TRUE) new_node->data[1] = &dns_iptable_neg; - else - new_node->data[1] = node->data[0]; } + if (new_node->data[0] == NULL) + new_node->data[0] = node->data[0]; + if (new_node->data[1] == NULL) + new_node->data[1] = node->data[1]; + if (node->node_num[0] > max_node) max_node = node->node_num[0]; if (node->node_num[1] > max_node)