=================================================================== RCS file: /cvs/mandoc/dba.c,v retrieving revision 1.4 retrieving revision 1.8 diff -u -p -r1.4 -r1.8 --- mandoc/dba.c 2016/08/05 21:38:11 1.4 +++ mandoc/dba.c 2016/08/17 20:46:56 1.8 @@ -1,4 +1,4 @@ -/* $Id: dba.c,v 1.4 2016/08/05 21:38:11 schwarze Exp $ */ +/* $Id: dba.c,v 1.8 2016/08/17 20:46:56 schwarze Exp $ */ /* * Copyright (c) 2016 Ingo Schwarze * @@ -17,8 +17,16 @@ * Allocation-based version of the mandoc database, for read-write access. * The interface is defined in "dba.h". */ +#include "config.h" + #include +#if HAVE_ENDIAN #include +#elif HAVE_SYS_ENDIAN +#include +#elif HAVE_NTOHL +#include +#endif #include #include #include @@ -128,17 +136,15 @@ dba_write(const char *fname, struct dba *dba) * Create a new page and append it to the pages table. */ struct dba_array * -dba_page_new(struct dba_array *pages, const char *name, const char *sect, - const char *arch, const char *desc, const char *file, enum form form) +dba_page_new(struct dba_array *pages, const char *arch, + const char *desc, const char *file, enum form form) { struct dba_array *page, *entry; page = dba_array_new(DBP_MAX, 0); entry = dba_array_new(1, DBA_STR | DBA_GROW); - dba_array_add(entry, prepend(name, NAME_FILE & NAME_MASK)); dba_array_add(page, entry); entry = dba_array_new(1, DBA_STR | DBA_GROW); - dba_array_add(entry, (void *)sect); dba_array_add(page, entry); if (arch != NULL && *arch != '\0') { entry = dba_array_new(1, DBA_STR | DBA_GROW); @@ -169,7 +175,7 @@ dba_page_add(struct dba_array *page, int32_t ie, const if (ie == DBP_ARCH) { if (entries == NULL) return; - if (str == NULL) { + if (str == NULL || *str == '\0') { dba_array_free(entries); dba_array_set(page, DBP_ARCH, NULL); return;