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

Diff for /mandoc/roff.c between version 1.48 and 1.49

version 1.48, 2008/12/07 14:38:57 version 1.49, 2008/12/07 16:41:04
Line 640  roffspecial(struct rofftree *tree, int tok, const char
Line 640  roffspecial(struct rofftree *tree, int tok, const char
                         break;                          break;
                 roff_err(tree, start, "invalid `At' arg");                  roff_err(tree, start, "invalid `At' arg");
                 return(0);                  return(0);
   
           case (ROFF_Fn):
                   if (0 != sz)
                           break;
                   roff_err(tree, start, "`%s' expects at least "
                                   "one arg", toknames[tok]);
                   return(0);
   
         case (ROFF_Nm):          case (ROFF_Nm):
                 if (0 == sz) {                  if (0 == sz) {
Line 1201  roff_ordered(ROFFCALL_ARGS) 
Line 1208  roff_ordered(ROFFCALL_ARGS) 
         if ( ! roffparseopts(tree, tok, &argv, argcp, argvp))          if ( ! roffparseopts(tree, tok, &argv, argcp, argvp))
                 return(0);                  return(0);
   
         if (NULL == *argv)          if (NULL == *argv) {
                   ordp[0] = NULL;
                 return(roffspecial(tree, tok, p, argcp,                  return(roffspecial(tree, tok, p, argcp,
                                         (const char **)argvp, 0, ordp));                                          (const char **)argvp, 0, ordp));
           }
   
         i = 0;          i = 0;
         while (*argv && i < ROFF_MAXLINEARG) {          while (*argv && i < ROFF_MAXLINEARG) {
Line 1281  roff_text(ROFFCALL_ARGS) 
Line 1290  roff_text(ROFFCALL_ARGS) 
          * terminating punctuation.  If we encounter it and all           * terminating punctuation.  If we encounter it and all
          * subsequent tokens are punctuation, then stop processing (the           * subsequent tokens are punctuation, then stop processing (the
          * line-dominant macro will print these tokens after closure).           * line-dominant macro will print these tokens after closure).
            * If the punctuation is followed by non-punctuation, then close
            * and re-open our scope, then continue.
          */           */
   
         i = 0;          i = 0;
Line 1312  roff_text(ROFFCALL_ARGS) 
Line 1323  roff_text(ROFFCALL_ARGS) 
                                 break;                                  break;
   
                 if (argv[j]) {                  if (argv[j]) {
                           if (ROFF_LSCOPE & tokens[tok].flags) {
                                   if ( ! roffdata(tree, 0, *argv++))
                                           return(0);
                                   continue;
                           }
                           if ( ! (*tree->cb.roffout)(tree->arg, tok))
                                   return(0);
                         if ( ! roffdata(tree, 0, *argv++))                          if ( ! roffdata(tree, 0, *argv++))
                                 return(0);                                  return(0);
                           if ( ! (*tree->cb.roffin)(tree->arg, tok,
                                                   argcp, argvp))
                                   return(0);
   
                           i = 0;
                         continue;                          continue;
                 }                  }
   

Legend:
Removed from v.1.48  
changed lines
  Added in v.1.49

CVSweb