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

Diff for /mandoc/mansearch.c between version 1.74 and 1.75

version 1.74, 2017/07/01 09:47:30 version 1.75, 2017/07/19 14:05:13
Line 394  static int
Line 394  static int
 manpage_compare(const void *vp1, const void *vp2)  manpage_compare(const void *vp1, const void *vp2)
 {  {
         const struct manpage    *mp1, *mp2;          const struct manpage    *mp1, *mp2;
           const char              *cp1, *cp2;
           size_t                   sz1, sz2;
         int                      diff;          int                      diff;
   
         mp1 = vp1;          mp1 = vp1;
         mp2 = vp2;          mp2 = vp2;
         return (diff = mp2->bits - mp1->bits) ? diff :          if ((diff = mp2->bits - mp1->bits) ||
             (diff = mp1->sec - mp2->sec) ? diff :              (diff = mp1->sec - mp2->sec))
             strcasecmp(mp1->names, mp2->names);                  return diff;
   
           /* Fall back to alphabetic ordering of names. */
           sz1 = strcspn(mp1->names, "(");
           sz2 = strcspn(mp2->names, "(");
           if (sz1 < sz2)
                   sz1 = sz2;
           if ((diff = strncasecmp(mp1->names, mp2->names, sz1)))
                   return diff;
   
           /* For identical names and sections, prefer arch-dependent. */
           cp1 = strchr(mp1->names + sz1, '/');
           cp2 = strchr(mp2->names + sz2, '/');
           return cp1 != NULL && cp2 != NULL ? strcasecmp(cp1, cp2) :
               cp1 != NULL ? -1 : cp2 != NULL ? 1 : 0;
 }  }
   
 static char *  static char *

Legend:
Removed from v.1.74  
changed lines
  Added in v.1.75

CVSweb