diff options
Diffstat (limited to 'common.c')
-rw-r--r-- | common.c | 11 |
1 files changed, 11 insertions, 0 deletions
@@ -70,6 +70,17 @@ str_vector_find (const struct str_vector *v, const char *s) return -1; } +static void * +str_map_steal (struct str_map *self, const char *key) +{ + void *value = str_map_find (self, key); + void (*free_backup) (void *) = self->free; + self->free = NULL; + str_map_set (self, key, NULL); + self->free = free_backup; + return value; +} + // --- Logging ----------------------------------------------------------------- static void |