version 1.80, 2018/12/13 11:55:46 |
version 1.81, 2019/04/30 18:51:57 |
Line 199 mansearch(const struct mansearch *search, |
|
Line 199 mansearch(const struct mansearch *search, |
|
} |
} |
mpage->names = buildnames(page); |
mpage->names = buildnames(page); |
mpage->output = buildoutput(outkey, page); |
mpage->output = buildoutput(outkey, page); |
|
mpage->bits = search->firstmatch ? rp->bits : 0; |
mpage->ipath = i; |
mpage->ipath = i; |
mpage->sec = *page->sect - '0'; |
mpage->sec = *page->sect - '0'; |
if (mpage->sec < 0 || mpage->sec > 9) |
if (mpage->sec < 0 || mpage->sec > 9) |
Line 294 manmerge_term(struct expr *e, struct ohash *htab) |
|
Line 295 manmerge_term(struct expr *e, struct ohash *htab) |
|
break; |
break; |
slot = ohash_lookup_memory(htab, |
slot = ohash_lookup_memory(htab, |
(char *)&res, sizeof(res.page), res.page); |
(char *)&res, sizeof(res.page), res.page); |
if ((rp = ohash_find(htab, slot)) != NULL) |
if ((rp = ohash_find(htab, slot)) != NULL) { |
|
rp->bits |= res.bits; |
continue; |
continue; |
|
} |
rp = mandoc_malloc(sizeof(*rp)); |
rp = mandoc_malloc(sizeof(*rp)); |
*rp = res; |
*rp = res; |
ohash_insert(htab, slot, rp); |
ohash_insert(htab, slot, rp); |
Line 408 manpage_compare(const void *vp1, const void *vp2) |
|
Line 411 manpage_compare(const void *vp1, const void *vp2) |
|
|
|
mp1 = vp1; |
mp1 = vp1; |
mp2 = vp2; |
mp2 = vp2; |
if ((diff = mp1->sec - mp2->sec)) |
if ((diff = mp2->bits - mp1->bits) || |
|
(diff = mp1->sec - mp2->sec)) |
return diff; |
return diff; |
|
|
/* Fall back to alphabetic ordering of names. */ |
/* Fall back to alphabetic ordering of names. */ |