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

Diff for /mandoc/roff.c between version 1.12 and 1.13

version 1.12, 2008/11/27 16:54:58 version 1.13, 2008/11/27 17:27:50
Line 451  roffargs(const struct rofftree *tree, 
Line 451  roffargs(const struct rofftree *tree, 
                         while (*buf && '\"' != *buf)                          while (*buf && '\"' != *buf)
                                 buf++;                                  buf++;
                         if (0 == *buf) {                          if (0 == *buf) {
                                 roff_err(tree, p, argv[i], "unclosed "                                  roff_err(tree, argv[i], "unclosed "
                                                 "quote in argument "                                                  "quote in argument "
                                                 "list for `%s'",                                                  "list for `%s'",
                                                 toknames[tok]);                                                  toknames[tok]);
Line 471  roffargs(const struct rofftree *tree, 
Line 471  roffargs(const struct rofftree *tree, 
   
         assert(i > 0);          assert(i > 0);
         if (ROFF_MAXARG == i && *buf) {          if (ROFF_MAXARG == i && *buf) {
                 roff_err(tree, p, p, "too many arguments for `%s'", toknames                  roff_err(tree, p, "too many arguments for `%s'", toknames
                                 [tok]);                                  [tok]);
                 return(0);                  return(0);
         }          }
Line 898  roff_layout(ROFFCALL_ARGS) 
Line 898  roff_layout(ROFFCALL_ARGS) 
   
         if (ROFF_EXIT == type) {          if (ROFF_EXIT == type) {
                 roffnode_free(tok, tree);                  roffnode_free(tok, tree);
                 return((*tree->cb->roffblkout)(tok));                  return((*tree->cb->roffblkout)(tree->args, tok));
         }          }
   
         i = 0;          i = 0;
Line 920  roff_layout(ROFFCALL_ARGS) 
Line 920  roff_layout(ROFFCALL_ARGS) 
         if (NULL == roffnode_new(tok, tree))          if (NULL == roffnode_new(tok, tree))
                 return(0);                  return(0);
   
         if ( ! (*tree->cb->roffin)(tok, argcp, argvp))          if ( ! (*tree->cb->roffin)(tree->args, tok, argcp, argvp))
                 return(0);                  return(0);
   
         if ( ! (ROFF_PARSED & tokens[tok].flags)) {          if ( ! (ROFF_PARSED & tokens[tok].flags)) {
   
                 /* TODO: print all tokens. */                  /* TODO: print all tokens. */
   
                 if ( ! ((*tree->cb->roffout)(tok)))                  if ( ! ((*tree->cb->roffout)(tree->args, tok)))
                         return(0);                          return(0);
                 return((*tree->cb->roffblkin)(tok));                  return((*tree->cb->roffblkin)(tree->args, tok));
         }          }
   
         while (*argv) {          while (*argv) {
Line 950  roff_layout(ROFFCALL_ARGS) 
Line 950  roff_layout(ROFFCALL_ARGS) 
                 argv++;                  argv++;
         }          }
   
         if ( ! ((*tree->cb->roffout)(tok)))          if ( ! ((*tree->cb->roffout)(tree->args, tok)))
                 return(0);                  return(0);
   
         return((*tree->cb->roffblkin)(tok));          return((*tree->cb->roffblkin)(tree->args, tok));
 }  }
   
   
Line 986  roff_text(ROFFCALL_ARGS) 
Line 986  roff_text(ROFFCALL_ARGS) 
         argcp[i] = ROFF_ARGMAX;          argcp[i] = ROFF_ARGMAX;
         argvp[i] = NULL;          argvp[i] = NULL;
   
         if ( ! (*tree->cb->roffin)(tok, argcp, argvp))          if ( ! (*tree->cb->roffin)(tree->args, tok, argcp, argvp))
                 return(0);                  return(0);
   
         if ( ! (ROFF_PARSED & tokens[tok].flags)) {          if ( ! (ROFF_PARSED & tokens[tok].flags)) {
   
                 /* TODO: print all tokens. */                  /* TODO: print all tokens. */
   
                 return((*tree->cb->roffout)(tok));                  return((*tree->cb->roffout)(tree->args, tok));
         }          }
   
         while (*argv) {          while (*argv) {
Line 1014  roff_text(ROFFCALL_ARGS) 
Line 1014  roff_text(ROFFCALL_ARGS) 
                 argv++;                  argv++;
         }          }
   
         return((*tree->cb->roffout)(tok));          return((*tree->cb->roffout)(tree->args, tok));
 }  }
   
   

Legend:
Removed from v.1.12  
changed lines
  Added in v.1.13

CVSweb