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

Diff for /mandoc/mdoc_macro.c between version 1.72 and 1.73

version 1.72, 2010/05/30 21:41:46 version 1.73, 2010/05/30 21:50:23
Line 1002  blk_full(MACRO_PROT_ARGS)
Line 1002  blk_full(MACRO_PROT_ARGS)
         }          }
   
         ac = ARGS_ERROR;          ac = ARGS_ERROR;
         lac = ARGS_PHRASE;  
   
         for ( ; ; ) {          for ( ; ; ) {
                 la = *pos;                  la = *pos;
                 lac = ac;                  /* Initialise last-phrase-type with ARGS_PHRASE. */
                   lac = ARGS_ERROR == ac ? ARGS_PHRASE : ac;
                 ac = mdoc_args(m, line, pos, buf, tok, &p);                  ac = mdoc_args(m, line, pos, buf, tok, &p);
   
                 if (ARGS_ERROR == ac)                  if (ARGS_ERROR == ac)
Line 1014  blk_full(MACRO_PROT_ARGS)
Line 1014  blk_full(MACRO_PROT_ARGS)
                 if (ARGS_EOLN == ac)                  if (ARGS_EOLN == ac)
                         break;                          break;
   
                 /* Don't emit leading punct. for phrases. */                  /*
                    * Emit leading punctuation (i.e., punctuation before
                    * the MDOC_HEAD) for non-phrase types.
                    */
   
                 if (NULL == head &&                  if (NULL == head &&
                                 ARGS_PEND != ac &&                                  ARGS_PEND != ac &&
Line 1027  blk_full(MACRO_PROT_ARGS)
Line 1030  blk_full(MACRO_PROT_ARGS)
                         continue;                          continue;
                 }                  }
   
                 /* Always re-open head for phrases. */                  /*
                    * Open a head if one hasn't been opened. Re-open head
                    * for phrases.
                    */
   
                 if (NULL == head ||                  if (NULL == head ||
                                 ARGS_PEND == ac ||                                  ARGS_PEND == ac ||
Line 1041  blk_full(MACRO_PROT_ARGS)
Line 1047  blk_full(MACRO_PROT_ARGS)
                 if (ARGS_PHRASE == ac ||                  if (ARGS_PHRASE == ac ||
                                 ARGS_PEND == ac ||                                  ARGS_PEND == ac ||
                                 ARGS_PPHRASE == ac) {                                  ARGS_PPHRASE == ac) {
                           /*
                            * Process phrases: set whether we're in a
                            * partial-phrase (this effects line handling)
                            * then call down into the phrase parser.
                            */
                         if (ARGS_PPHRASE == ac)                          if (ARGS_PPHRASE == ac)
                                 m->flags |= MDOC_PPHRASE;                                  m->flags |= MDOC_PPHRASE;
                         if (ARGS_PEND == ac && ARGS_PPHRASE == lac)                          if (ARGS_PEND == ac && ARGS_PPHRASE == lac)
Line 1053  blk_full(MACRO_PROT_ARGS)
Line 1064  blk_full(MACRO_PROT_ARGS)
                                 return(0);                                  return(0);
   
                         m->flags &= ~MDOC_PPHRASE;                          m->flags &= ~MDOC_PPHRASE;
   
                           /* Close out active phrase. */
   
                         if ( ! rew_sub(MDOC_HEAD, m, tok, line, ppos))                          if ( ! rew_sub(MDOC_HEAD, m, tok, line, ppos))
                                 return(0);                                  return(0);

Legend:
Removed from v.1.72  
changed lines
  Added in v.1.73

CVSweb