=================================================================== RCS file: /cvs/mandoc/mandocdb.c,v retrieving revision 1.18 retrieving revision 1.21 diff -u -p -r1.18 -r1.21 --- mandoc/mandocdb.c 2011/12/01 21:05:49 1.18 +++ mandoc/mandocdb.c 2011/12/02 00:21:56 1.21 @@ -1,4 +1,4 @@ -/* $Id: mandocdb.c,v 1.18 2011/12/01 21:05:49 kristaps Exp $ */ +/* $Id: mandocdb.c,v 1.21 2011/12/02 00:21:56 kristaps Exp $ */ /* * Copyright (c) 2011 Kristaps Dzonsons * Copyright (c) 2011 Ingo Schwarze @@ -33,8 +33,12 @@ #include #include -#ifdef __linux__ +#if defined(__linux__) +# include # include +#elif defined(__APPLE__) +# include +# include #else # include #endif @@ -626,15 +630,13 @@ index_merge(const struct of *of, struct mparse *mp, * into the database. */ - vbuf.rec = rec; + vbuf.rec = htobe32(rec); seq = R_FIRST; while (0 == (ch = (*hash->seq)(hash, &key, &val, seq))) { seq = R_NEXT; - - vbuf.mask = *(uint64_t *)val.data; + vbuf.mask = htobe64(*(uint64_t *)val.data); val.size = sizeof(struct db_val); val.data = &vbuf; - dbt_put(db, dbf, &key, &val); } if (ch < 0) { @@ -732,7 +734,7 @@ index_prune(const struct of *ofile, DB *db, const char break; vbuf = val.data; - if (*maxrec != vbuf->rec) + if (*maxrec != betoh32(vbuf->rec)) continue; if ((ch = (*db->del)(db, &key, R_CURSOR)) < 0)