X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Fhashmap.c;h=4b187057ec34f8af4d5de0fcb7bbdff8159438dc;hp=51f00131f46f36d632b8ad159549a0dde57a25de;hb=d257ddef22ff1a1b98e6172799819e6511b1bcfb;hpb=449ddb2d23a63ca4c8cd70d13a070fba87c1fb30 diff --git a/src/hashmap.c b/src/hashmap.c index 51f00131f..4b187057e 100644 --- a/src/hashmap.c +++ b/src/hashmap.c @@ -476,6 +476,21 @@ void* hashmap_steal_first(Hashmap *h) { return data; } +void* hashmap_steal_first_key(Hashmap *h) { + void *key; + + if (!h) + return NULL; + + if (!h->iterate_list_head) + return NULL; + + key = (void*) h->iterate_list_head->key; + remove_entry(h, h->iterate_list_head); + + return key; +} + unsigned hashmap_size(Hashmap *h) { if (!h)