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

Diff for /mandoc/mandoc.c between version 1.47 and 1.48

version 1.47, 2011/04/17 09:08:19 version 1.48, 2011/04/19 16:38:48
Line 95  numescape(const char *start)
Line 95  numescape(const char *start)
         return(++i);          return(++i);
 }  }
   
 /*  
  * Handle an escaped sequeence.  This should be called with any  
  * string subsequent a `\'.  Pass a pointer to this substring as "end";  
  * it will be set to the supremum of the parsed escape sequence.  If  
  * this returns ESCAPE_ERROR, the string is bogus and should be thrown  
  * away.  If not ESCAPE_ERROR or ESCAPE_IGNORE, "start" is set to the  
  * first relevant character of the substring (font, glyph, whatever) of  
  * length sz.  Both "start" and "sz" may be NULL.  
  */  
 enum mandoc_esc  enum mandoc_esc
 mandoc_escape(const char **end, const char **start, int *sz)  mandoc_escape(const char **end, const char **start, int *sz)
 {  {
Line 460  mandoc_strdup(const char *ptr)
Line 451  mandoc_strdup(const char *ptr)
  * or to the null byte terminating the argument line.   * or to the null byte terminating the argument line.
  */   */
 char *  char *
 mandoc_getarg(struct mparse *parse,  mandoc_getarg(struct mparse *parse, char **cpp, int ln, int *pos)
                 char **cpp, int ln, int dowarn, int *pos)  
 {  {
         char     *start, *cp;          char     *start, *cp;
         int       quoted, pairs, white;          int       quoted, pairs, white;
Line 508  mandoc_getarg(struct mparse *parse, 
Line 498  mandoc_getarg(struct mparse *parse, 
         }          }
   
         /* Quoted argument without a closing quote. */          /* Quoted argument without a closing quote. */
         if (dowarn && 1 == quoted)          if (1 == quoted)
                 mandoc_msg(MANDOCERR_BADQUOTE, parse, ln, *pos, NULL);                  mandoc_msg(MANDOCERR_BADQUOTE, parse, ln, *pos, NULL);
   
         /* Null-terminate this argument and move to the next one. */          /* Null-terminate this argument and move to the next one. */
Line 522  mandoc_getarg(struct mparse *parse, 
Line 512  mandoc_getarg(struct mparse *parse, 
         *pos += (int)(cp - start) + (quoted ? 1 : 0);          *pos += (int)(cp - start) + (quoted ? 1 : 0);
         *cpp = cp;          *cpp = cp;
   
         if (dowarn && '\0' == *cp && (white || ' ' == cp[-1]))          if ('\0' == *cp && (white || ' ' == cp[-1]))
                 mandoc_msg(MANDOCERR_EOLNSPACE, parse, ln, *pos, NULL);                  mandoc_msg(MANDOCERR_EOLNSPACE, parse, ln, *pos, NULL);
   
         return(start);          return(start);

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

CVSweb