=================================================================== RCS file: /cvs/mandoc/tag.c,v retrieving revision 1.7 retrieving revision 1.10 diff -u -p -r1.7 -r1.10 --- mandoc/tag.c 2015/08/29 15:28:13 1.7 +++ mandoc/tag.c 2015/10/13 15:53:05 1.10 @@ -1,4 +1,4 @@ -/* $Id: tag.c,v 1.7 2015/08/29 15:28:13 schwarze Exp $ */ +/* $Id: tag.c,v 1.10 2015/10/13 15:53:05 schwarze Exp $ */ /* * Copyright (c) 2015 Ingo Schwarze * @@ -26,13 +26,8 @@ #include #include -#if HAVE_OHASH -#include -#else -#include "compat_ohash.h" -#endif - #include "mandoc_aux.h" +#include "mandoc_ohash.h" #include "tag.h" struct tag_entry { @@ -42,9 +37,6 @@ struct tag_entry { }; static void tag_signal(int); -static void *tag_alloc(size_t, void *); -static void tag_free(void *, void *); -static void *tag_calloc(size_t, size_t, void *); static struct ohash tag_data; static struct tag_files tag_files; @@ -58,7 +50,6 @@ static struct tag_files tag_files; struct tag_files * tag_init(void) { - struct ohash_info tag_info; int ofd; ofd = -1; @@ -91,13 +82,8 @@ tag_init(void) * where various marked-up terms are documented. */ - tag_info.alloc = tag_alloc; - tag_info.calloc = tag_calloc; - tag_info.free = tag_free; - tag_info.key_offset = offsetof(struct tag_entry, s); - tag_info.data = NULL; - ohash_init(&tag_data, 4, &tag_info); - return(&tag_files); + mandoc_ohash_init(&tag_data, 4, offsetof(struct tag_entry, s)); + return &tag_files; fail: tag_unlink(); @@ -111,7 +97,7 @@ fail: *tag_files.tfn = '\0'; tag_files.ofd = -1; tag_files.tfd = -1; - return(NULL); + return NULL; } /* @@ -125,7 +111,7 @@ tag_put(const char *s, int prio, size_t line) size_t len; unsigned int slot; - if (tag_files.tfd <= 0) + if (tag_files.tfd <= 0 || strchr(s, ' ') != NULL) return; slot = ohash_qlookup(&tag_data, s); entry = ohash_find(&tag_data, slot); @@ -186,28 +172,4 @@ tag_signal(int signum) kill(getpid(), signum); /* NOTREACHED */ _exit(1); -} - -/* - * Memory management callback functions for ohash. - */ -static void * -tag_alloc(size_t sz, void *arg) -{ - - return(mandoc_malloc(sz)); -} - -static void * -tag_calloc(size_t nmemb, size_t sz, void *arg) -{ - - return(mandoc_calloc(nmemb, sz)); -} - -static void -tag_free(void *p, void *arg) -{ - - free(p); }