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

Diff for /mandoc/Attic/mdoc_action.c between version 1.53 and 1.57

version 1.53, 2010/04/06 11:33:00 version 1.57, 2010/05/14 16:02:29
Line 44  struct actions {
Line 44  struct actions {
   
 static  int       concat(struct mdoc *, char *,  static  int       concat(struct mdoc *, char *,
                         const struct mdoc_node *, size_t);                          const struct mdoc_node *, size_t);
 static  inline int order_rs(int);  static  inline int order_rs(enum mdoct);
   
 static  int       post_ar(POST_ARGS);  static  int       post_ar(POST_ARGS);
 static  int       post_at(POST_ARGS);  static  int       post_at(POST_ARGS);
Line 196  static const struct actions mdoc_actions[MDOC_MAX] = {
Line 196  static const struct actions mdoc_actions[MDOC_MAX] = {
   
 #define RSORD_MAX 14  #define RSORD_MAX 14
   
 static  const int rsord[RSORD_MAX] = {  static  const enum mdoct rsord[RSORD_MAX] = {
         MDOC__A,          MDOC__A,
         MDOC__T,          MDOC__T,
         MDOC__B,          MDOC__B,
Line 366  post_st(POST_ARGS)
Line 366  post_st(POST_ARGS)
   
         assert(MDOC_TEXT == n->child->type);          assert(MDOC_TEXT == n->child->type);
         p = mdoc_a2st(n->child->string);          p = mdoc_a2st(n->child->string);
         assert(p);          if (p != NULL) {
         free(n->child->string);                  free(n->child->string);
         n->child->string = mandoc_strdup(p);                  n->child->string = mandoc_strdup(p);
           }
         return(1);          return(1);
 }  }
   
Line 381  post_st(POST_ARGS)
Line 382  post_st(POST_ARGS)
 static int  static int
 post_at(POST_ARGS)  post_at(POST_ARGS)
 {  {
         struct mdoc_node        *nn;          struct mdoc_node *nn;
         const char              *p;          const char       *p, *q;
           char             *buf;
           size_t            sz;
   
         if (n->child) {          if (n->child) {
                 assert(MDOC_TEXT == n->child->type);                  assert(MDOC_TEXT == n->child->type);
                 p = mdoc_a2att(n->child->string);                  p = mdoc_a2att(n->child->string);
                 assert(p);                  if (p) {
                 free(n->child->string);                          free(n->child->string);
                 n->child->string = mandoc_strdup(p);                          n->child->string = mandoc_strdup(p);
                   } else {
                           p = "AT&T UNIX ";
                           q = n->child->string;
                           sz = strlen(p) + strlen(q) + 1;
                           buf = mandoc_malloc(sz);
                           strlcpy(buf, p, sz);
                           strlcat(buf, q, sz);
                           free(n->child->string);
                           n->child->string = buf;
                   }
                 return(1);                  return(1);
         }          }
   
Line 419  post_sh(POST_ARGS)
Line 432  post_sh(POST_ARGS)
   
         if ( ! concat(m, buf, n->child, BUFSIZ))          if ( ! concat(m, buf, n->child, BUFSIZ))
                 return(0);                  return(0);
         sec = mdoc_atosec(buf);          sec = mdoc_str2sec(buf);
         /*          /*
          * The first section should always make us move into a non-new           * The first section should always make us move into a non-new
          * state.           * state.
Line 945  post_display(POST_ARGS)
Line 958  post_display(POST_ARGS)
   
   
 static inline int  static inline int
 order_rs(int t)  order_rs(enum mdoct t)
 {  {
         int             i;          int             i;
   
         for (i = 0; i < RSORD_MAX; i++)          for (i = 0; i < (int)RSORD_MAX; i++)
                 if (rsord[i] == t)                  if (rsord[i] == t)
                         return(i);                          return(i);
   

Legend:
Removed from v.1.53  
changed lines
  Added in v.1.57

CVSweb