[BACK]Return to mansearch.c CVS log [TXT][DIR] Up to [cvsweb.bsd.lv] / mandoc

Diff for /mandoc/mansearch.c between version 1.78 and 1.80

version 1.78, 2018/11/19 19:27:37 version 1.80, 2018/12/13 11:55:46
Line 36 
Line 36 
 #include <string.h>  #include <string.h>
 #include <unistd.h>  #include <unistd.h>
   
 #include "mandoc.h"  
 #include "mandoc_aux.h"  #include "mandoc_aux.h"
 #include "mandoc_ohash.h"  #include "mandoc_ohash.h"
 #include "manconf.h"  #include "manconf.h"
Line 201  mansearch(const struct mansearch *search,
Line 200  mansearch(const struct mansearch *search,
                         mpage->names = buildnames(page);                          mpage->names = buildnames(page);
                         mpage->output = buildoutput(outkey, page);                          mpage->output = buildoutput(outkey, page);
                         mpage->ipath = i;                          mpage->ipath = i;
                         mpage->bits = rp->bits;  
                         mpage->sec = *page->sect - '0';                          mpage->sec = *page->sect - '0';
                         if (mpage->sec < 0 || mpage->sec > 9)                          if (mpage->sec < 0 || mpage->sec > 9)
                                 mpage->sec = 10;                                  mpage->sec = 10;
Line 296  manmerge_term(struct expr *e, struct ohash *htab)
Line 294  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 412  manpage_compare(const void *vp1, const void *vp2)
Line 408  manpage_compare(const void *vp1, const void *vp2)
   
         mp1 = vp1;          mp1 = vp1;
         mp2 = vp2;          mp2 = vp2;
         if ((diff = mp2->bits - mp1->bits) ||          if ((diff = mp1->sec - mp2->sec))
             (diff = mp1->sec - mp2->sec))  
                 return diff;                  return diff;
   
         /* Fall back to alphabetic ordering of names. */          /* Fall back to alphabetic ordering of names. */

Legend:
Removed from v.1.78  
changed lines
  Added in v.1.80

CVSweb