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

Diff for /mandoc/mdoc_markdown.c between version 1.17 and 1.18

version 1.17, 2017/04/24 23:06:18 version 1.18, 2017/05/04 17:48:29
Line 19 
Line 19 
 #include <assert.h>  #include <assert.h>
 #include <ctype.h>  #include <ctype.h>
 #include <stdio.h>  #include <stdio.h>
   #include <stdlib.h>
 #include <string.h>  #include <string.h>
   
 #include "mandoc_aux.h"  #include "mandoc_aux.h"
Line 222  static const struct md_act __md_acts[MDOC_MAX - MDOC_D
Line 223  static const struct md_act __md_acts[MDOC_MAX - MDOC_D
         { md_cond_body, md_pre_En, md_post_En, NULL, NULL }, /* En */          { md_cond_body, md_pre_En, md_post_En, NULL, NULL }, /* En */
         { NULL, NULL, NULL, NULL, NULL }, /* Dx */          { NULL, NULL, NULL, NULL, NULL }, /* Dx */
         { NULL, NULL, md_post_pc, NULL, NULL }, /* %Q */          { NULL, NULL, md_post_pc, NULL, NULL }, /* %Q */
         { NULL, md_pre_br, NULL, NULL, NULL }, /* br */  
         { NULL, md_pre_Pp, NULL, NULL, NULL }, /* sp */          { NULL, md_pre_Pp, NULL, NULL, NULL }, /* sp */
         { NULL, md_pre_Lk, md_post_pc, NULL, NULL }, /* %U */          { NULL, md_pre_Lk, md_post_pc, NULL, NULL }, /* %U */
         { NULL, NULL, NULL, NULL, NULL }, /* Ta */          { NULL, NULL, NULL, NULL, NULL }, /* Ta */
Line 310  md_node(struct roff_node *n)
Line 310  md_node(struct roff_node *n)
         process_children = 1;          process_children = 1;
         n->flags &= ~NODE_ENDED;          n->flags &= ~NODE_ENDED;
   
         switch (n->type) {          if (n->type == ROFFT_TEXT) {
         case ROFFT_TEXT:  
                 if (n->flags & NODE_DELIMC)                  if (n->flags & NODE_DELIMC)
                         outflags &= ~(MD_spc | MD_spc_force);                          outflags &= ~(MD_spc | MD_spc_force);
                 else if (outflags & MD_Sm)                  else if (outflags & MD_Sm)
Line 321  md_node(struct roff_node *n)
Line 320  md_node(struct roff_node *n)
                         outflags &= ~(MD_spc | MD_spc_force);                          outflags &= ~(MD_spc | MD_spc_force);
                 else if (outflags & MD_Sm)                  else if (outflags & MD_Sm)
                         outflags |= MD_spc;                          outflags |= MD_spc;
                 break;          } else if (n->tok < ROFF_MAX) {
         default:                  switch (n->tok) {
                   case ROFF_br:
                           md_pre_br(n);
                           break;
                   default:
                           abort();
                   }
           } else {
                   assert(n->tok >= MDOC_Dd && n->tok < MDOC_MAX);
                 act = md_acts + n->tok;                  act = md_acts + n->tok;
                 cond = act->cond == NULL || (*act->cond)(n);                  cond = act->cond == NULL || (*act->cond)(n);
                 if (cond && act->pre != NULL &&                  if (cond && act->pre != NULL &&
                     (n->end == ENDBODY_NOT || n->child != NULL))                      (n->end == ENDBODY_NOT || n->child != NULL))
                         process_children = (*act->pre)(n);                          process_children = (*act->pre)(n);
                 break;  
         }          }
   
         if (process_children && n->child != NULL)          if (process_children && n->child != NULL)

Legend:
Removed from v.1.17  
changed lines
  Added in v.1.18

CVSweb