From d5099efc47d4e6ac60816b5381a5f607ab03f06e Mon Sep 17 00:00:00 2001 From: Michal Schmidt Date: Wed, 13 Aug 2014 01:00:18 +0200 Subject: hashmap: introduce hash_ops to make struct Hashmap smaller It is redundant to store 'hash' and 'compare' function pointers in struct Hashmap separately. The functions always comprise a pair. Store a single pointer to struct hash_ops instead. systemd keeps hundreds of hashmaps, so this saves a little bit of memory. --- src/resolve/resolved-dns-zone.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/resolve/resolved-dns-zone.c') diff --git a/src/resolve/resolved-dns-zone.c b/src/resolve/resolved-dns-zone.c index b53e957d76..8098ff5e70 100644 --- a/src/resolve/resolved-dns-zone.c +++ b/src/resolve/resolved-dns-zone.c @@ -126,11 +126,11 @@ static int dns_zone_init(DnsZone *z) { assert(z); - r = hashmap_ensure_allocated(&z->by_key, dns_resource_key_hash_func, dns_resource_key_compare_func); + r = hashmap_ensure_allocated(&z->by_key, &dns_resource_key_hash_ops); if (r < 0) return r; - r = hashmap_ensure_allocated(&z->by_name, dns_name_hash_func, dns_name_compare_func); + r = hashmap_ensure_allocated(&z->by_name, &dns_name_hash_ops); if (r < 0) return r; @@ -194,7 +194,7 @@ static int dns_zone_item_probe_start(DnsZoneItem *i) { return r; } - r = set_ensure_allocated(&t->zone_items, NULL, NULL); + r = set_ensure_allocated(&t->zone_items, NULL); if (r < 0) goto gc; -- cgit v1.2.3-54-g00ecf