=================================================================== RCS file: /cvs/mandoc/mandocdb.c,v retrieving revision 1.96 retrieving revision 1.100 diff -u -p -r1.96 -r1.100 --- mandoc/mandocdb.c 2014/01/02 22:44:10 1.96 +++ mandoc/mandocdb.c 2014/01/05 04:13:52 1.100 @@ -1,4 +1,4 @@ -/* $Id: mandocdb.c,v 1.96 2014/01/02 22:44:10 schwarze Exp $ */ +/* $Id: mandocdb.c,v 1.100 2014/01/05 04:13:52 schwarze Exp $ */ /* * Copyright (c) 2011, 2012 Kristaps Dzonsons * Copyright (c) 2011, 2012, 2013, 2014 Ingo Schwarze @@ -1024,9 +1024,19 @@ mpages_merge(struct mchars *mc, struct mparse *mp, int mpage->title = mandoc_strdup(mpage->mlinks->name); } + putkey(mpage, mpage->sec, TYPE_sec); + putkey(mpage, '\0' == *mpage->arch ? + "any" : mpage->arch, TYPE_arch); - for (mlink = mpage->mlinks; mlink; mlink = mlink->next) + for (mlink = mpage->mlinks; mlink; mlink = mlink->next) { + if ('\0' != *mlink->dsec) + putkey(mpage, mlink->dsec, TYPE_sec); + if ('\0' != *mlink->fsec) + putkey(mpage, mlink->fsec, TYPE_sec); + putkey(mpage, '\0' == *mlink->arch ? + "any" : mlink->arch, TYPE_arch); putkey(mpage, mlink->name, TYPE_Nm); + } if (warnings && !use_all) { match = 0; @@ -1808,14 +1818,6 @@ dbindex(const struct mpage *mpage, struct mchars *mc) SQL_EXEC("BEGIN TRANSACTION"); i = 1; - /* - * XXX The following three lines are obsolete - * and only kept for backward compatibility - * until apropos(1) and friends have caught up. - */ - SQL_BIND_TEXT(stmts[STMT_INSERT_PAGE], i, mpage->mlinks->file); - SQL_BIND_TEXT(stmts[STMT_INSERT_PAGE], i, mpage->mlinks->dsec); - SQL_BIND_TEXT(stmts[STMT_INSERT_PAGE], i, mpage->mlinks->arch); SQL_BIND_TEXT(stmts[STMT_INSERT_PAGE], i, desc); SQL_BIND_INT(stmts[STMT_INSERT_PAGE], i, FORM_SRC == mpage->form); SQL_STEP(stmts[STMT_INSERT_PAGE]); @@ -1952,15 +1954,7 @@ dbopen(int real) return(0); } - /* - * XXX The first three columns in table mpages are obsolete - * and only kept for backward compatibility - * until apropos(1) and friends have caught up. - */ sql = "CREATE TABLE \"mpages\" (\n" - " \"file\" TEXT NOT NULL,\n" - " \"sec\" TEXT NOT NULL,\n" - " \"arch\" TEXT NOT NULL,\n" " \"desc\" TEXT NOT NULL,\n" " \"form\" INTEGER NOT NULL,\n" " \"id\" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL\n" @@ -1997,7 +1991,7 @@ prepare_statements: sql = "DELETE FROM mpages where file=?"; sqlite3_prepare_v2(db, sql, -1, &stmts[STMT_DELETE_PAGE], NULL); sql = "INSERT INTO mpages " - "(file,sec,arch,desc,form) VALUES (?,?,?,?,?)"; + "(desc,form) VALUES (?,?)"; sqlite3_prepare_v2(db, sql, -1, &stmts[STMT_INSERT_PAGE], NULL); sql = "INSERT INTO mlinks " "(file,sec,arch,name,pageid) VALUES (?,?,?,?,?)";