From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from localhost (fantadrom.bsd.lv [local]) by fantadrom.bsd.lv (OpenSMTPD) with ESMTPA id 7797b394 for ; Thu, 22 Nov 2018 07:02:16 -0500 (EST) Date: Thu, 22 Nov 2018 07:02:16 -0500 (EST) X-Mailinglist: mandoc-source Reply-To: source@mandoc.bsd.lv MIME-Version: 1.0 From: schwarze@mandoc.bsd.lv To: source@mandoc.bsd.lv Subject: mandoc: In apropos(1) output, stop sorting .Nm search results by name X-Mailer: activitymail 1.26, http://search.cpan.org/dist/activitymail/ Content-Type: text/plain; charset=utf-8 Message-Id: <381d5ffb07188372@fantadrom.bsd.lv> Log Message: ----------- In apropos(1) output, stop sorting .Nm search results by name priorities (bits). The obscure feature wasn't documented and merely confused people - for example Edward Tomasz Napierala , see https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=227408. Smaller patch provided by Yuri Pankov , but i'm also retiring the now unused "bits" member from struct manpage. Simplification is good. Modified Files: -------------- mandoc: main.c mansearch.c mansearch.h Revision Data ------------- Index: main.c =================================================================== RCS file: /home/cvs/mandoc/mandoc/main.c,v retrieving revision 1.309 retrieving revision 1.310 diff -Lmain.c -Lmain.c -u -p -r1.309 -r1.310 --- main.c +++ main.c @@ -405,7 +405,6 @@ main(int argc, char *argv[]) res[sz].names = NULL; res[sz].output = NULL; res[sz].ipath = SIZE_MAX; - res[sz].bits = 0; res[sz].sec = 10; res[sz].form = FORM_SRC; sz++; @@ -754,7 +753,6 @@ found: page->names = NULL; page->output = NULL; page->ipath = ipath; - page->bits = NAME_FILE & NAME_MASK; page->sec = (*sec >= '1' && *sec <= '9') ? *sec - '1' + 1 : 10; page->form = form; return 1; Index: mansearch.c =================================================================== RCS file: /home/cvs/mandoc/mandoc/mansearch.c,v retrieving revision 1.78 retrieving revision 1.79 diff -Lmansearch.c -Lmansearch.c -u -p -r1.78 -r1.79 --- mansearch.c +++ mansearch.c @@ -201,7 +201,6 @@ mansearch(const struct mansearch *search mpage->names = buildnames(page); mpage->output = buildoutput(outkey, page); mpage->ipath = i; - mpage->bits = rp->bits; mpage->sec = *page->sect - '0'; if (mpage->sec < 0 || mpage->sec > 9) mpage->sec = 10; @@ -296,10 +295,8 @@ manmerge_term(struct expr *e, struct oha break; slot = ohash_lookup_memory(htab, (char *)&res, sizeof(res.page), res.page); - if ((rp = ohash_find(htab, slot)) != NULL) { - rp->bits |= res.bits; + if ((rp = ohash_find(htab, slot)) != NULL) continue; - } rp = mandoc_malloc(sizeof(*rp)); *rp = res; ohash_insert(htab, slot, rp); @@ -412,8 +409,7 @@ manpage_compare(const void *vp1, const v mp1 = vp1; mp2 = vp2; - if ((diff = mp2->bits - mp1->bits) || - (diff = mp1->sec - mp2->sec)) + if ((diff = mp1->sec - mp2->sec)) return diff; /* Fall back to alphabetic ordering of names. */ Index: mansearch.h =================================================================== RCS file: /home/cvs/mandoc/mandoc/mansearch.h,v retrieving revision 1.28 retrieving revision 1.29 diff -Lmansearch.h -Lmansearch.h -u -p -r1.28 -r1.29 --- mansearch.h +++ mansearch.h @@ -93,7 +93,6 @@ struct manpage { char *names; /* a list of names with sections */ char *output; /* user-defined additional output */ size_t ipath; /* number of the manpath */ - uint64_t bits; /* name type mask */ int sec; /* section number, 10 means invalid */ enum form form; }; -- To unsubscribe send an email to source+unsubscribe@mandoc.bsd.lv