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

Diff for /mandoc/Attic/mdoc_hash.c between version 1.27 and 1.28

version 1.27, 2016/07/15 18:03:45 version 1.28, 2017/04/24 23:06:18
Line 1 
Line 1 
 /*      $Id$ */  /*      $Id$ */
 /*  /*
  * Copyright (c) 2008, 2009 Kristaps Dzonsons <kristaps@bsd.lv>   * Copyright (c) 2008, 2009 Kristaps Dzonsons <kristaps@bsd.lv>
  * Copyright (c) 2015 Ingo Schwarze <schwarze@openbsd.org>   * Copyright (c) 2015, 2017 Ingo Schwarze <schwarze@openbsd.org>
  *   *
  * Permission to use, copy, modify, and distribute this software for any   * Permission to use, copy, modify, and distribute this software for any
  * purpose with or without fee is hereby granted, provided that the above   * purpose with or without fee is hereby granted, provided that the above
Line 46  mdoc_hash_init(void)
Line 46  mdoc_hash_init(void)
   
         memset(table, UCHAR_MAX, sizeof(table));          memset(table, UCHAR_MAX, sizeof(table));
   
         for (i = 0; i < (int)MDOC_MAX; i++) {          for (i = 0; i < (int)(MDOC_MAX - MDOC_Dd); i++) {
                 p = mdoc_macronames[i];                  p = roff_name[MDOC_Dd + i];
   
                 if (isalpha((unsigned char)p[1]))                  if (isalpha((unsigned char)p[1]))
                         major = 12 * (tolower((unsigned char)p[1]) - 97);                          major = 12 * (tolower((unsigned char)p[1]) - 97);
Line 64  mdoc_hash_init(void)
Line 64  mdoc_hash_init(void)
         }          }
 }  }
   
 int  enum roff_tok
 mdoc_hash_find(const char *p)  mdoc_hash_find(const char *p)
 {  {
         int               major, i, j;          int               major, i, j;
Line 87  mdoc_hash_find(const char *p)
Line 87  mdoc_hash_find(const char *p)
         for (j = 0; j < 12; j++) {          for (j = 0; j < 12; j++) {
                 if (UCHAR_MAX == (i = table[major + j]))                  if (UCHAR_MAX == (i = table[major + j]))
                         break;                          break;
                 if (0 == strcmp(p, mdoc_macronames[i]))                  if (strcmp(p, roff_name[MDOC_Dd + i]) == 0)
                         return i;                          return MDOC_Dd + i;
         }          }
   
         return TOKEN_NONE;          return TOKEN_NONE;

Legend:
Removed from v.1.27  
changed lines
  Added in v.1.28

CVSweb