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

Diff for /mandoc/mandocdb.c between version 1.112 and 1.114

version 1.112, 2014/01/19 22:41:25 version 1.114, 2014/01/22 20:58:39
Line 956  mlink_check(struct mpage *mpage, struct mlink *mlink)
Line 956  mlink_check(struct mpage *mpage, struct mlink *mlink)
 static void  static void
 mpages_merge(struct mchars *mc, struct mparse *mp)  mpages_merge(struct mchars *mc, struct mparse *mp)
 {  {
           char                     any[] = "any";
         struct ohash_info        str_info;          struct ohash_info        str_info;
         struct mpage            *mpage;          struct mpage            *mpage;
         struct mlink            *mlink;          struct mlink            *mlink;
Line 1027  mpages_merge(struct mchars *mc, struct mparse *mp)
Line 1028  mpages_merge(struct mchars *mc, struct mparse *mp)
                 }                  }
                 putkey(mpage, mpage->sec, TYPE_sec);                  putkey(mpage, mpage->sec, TYPE_sec);
                 putkey(mpage, '\0' == *mpage->arch ?                  putkey(mpage, '\0' == *mpage->arch ?
                     "any" : mpage->arch, TYPE_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)                          if ('\0' != *mlink->dsec)
Line 1035  mpages_merge(struct mchars *mc, struct mparse *mp)
Line 1036  mpages_merge(struct mchars *mc, struct mparse *mp)
                         if ('\0' != *mlink->fsec)                          if ('\0' != *mlink->fsec)
                                 putkey(mpage, mlink->fsec, TYPE_sec);                                  putkey(mpage, mlink->fsec, TYPE_sec);
                         putkey(mpage, '\0' == *mlink->arch ?                          putkey(mpage, '\0' == *mlink->arch ?
                             "any" : mlink->arch, TYPE_arch);                              any : mlink->arch, TYPE_arch);
                         putkey(mpage, mlink->name, TYPE_Nm);                          putkey(mpage, mlink->name, TYPE_Nm);
                 }                  }
   
Line 1663  static void
Line 1664  static void
 render_key(struct mchars *mc, struct str *key)  render_key(struct mchars *mc, struct str *key)
 {  {
         size_t           sz, bsz, pos;          size_t           sz, bsz, pos;
         char             utfbuf[7], res[5];          char             utfbuf[7], res[6];
         char            *buf;          char            *buf;
         const char      *seq, *cpp, *val;          const char      *seq, *cpp, *val;
         int              len, u;          int              len, u;
Line 1675  render_key(struct mchars *mc, struct str *key)
Line 1676  render_key(struct mchars *mc, struct str *key)
         res[1] = '\t';          res[1] = '\t';
         res[2] = ASCII_NBRSP;          res[2] = ASCII_NBRSP;
         res[3] = ASCII_HYPH;          res[3] = ASCII_HYPH;
         res[4] = '\0';          res[4] = ASCII_BREAK;
           res[5] = '\0';
   
         val = key->key;          val = key->key;
         bsz = strlen(val);          bsz = strlen(val);
Line 1706  render_key(struct mchars *mc, struct str *key)
Line 1708  render_key(struct mchars *mc, struct str *key)
                         val += sz;                          val += sz;
                 }                  }
   
                 if (ASCII_HYPH == *val) {                  switch (*val) {
                   case (ASCII_HYPH):
                         buf[pos++] = '-';                          buf[pos++] = '-';
                         val++;                          val++;
                         continue;                          continue;
                 } else if ('\t' == *val || ASCII_NBRSP == *val) {                  case ('\t'):
                           /* FALLTHROUGH */
                   case (ASCII_NBRSP):
                         buf[pos++] = ' ';                          buf[pos++] = ' ';
                         val++;                          val++;
                           /* FALLTHROUGH */
                   case (ASCII_BREAK):
                         continue;                          continue;
                 } else if ('\\' != *val)                  default:
                           break;
                   }
                   if ('\\' != *val)
                         break;                          break;
   
                 /* Read past the slash. */                  /* Read past the slash. */

Legend:
Removed from v.1.112  
changed lines
  Added in v.1.114

CVSweb