]> git.cameronkatri.com Git - mandoc.git/blobdiff - macro.c
Added more character-escape regressions.
[mandoc.git] / macro.c
diff --git a/macro.c b/macro.c
index acf94fc063c2f56b3d9b4bb41f00201672a27cae..7f49691ae8f41b8158b8b72f397faf89741a16c5 100644 (file)
--- a/macro.c
+++ b/macro.c
@@ -1,4 +1,4 @@
-/* $Id: macro.c,v 1.51 2009/02/23 12:45:19 kristaps Exp $ */
+/* $Id: macro.c,v 1.53 2009/02/26 14:56:27 kristaps Exp $ */
 /*
  * Copyright (c) 2008 Kristaps Dzonsons <kristaps@kth.se>
  *
@@ -170,8 +170,7 @@ const       struct mdoc_macro __mdoc_macros[MDOC_MAX] = {
        { macro_constant_scoped, MDOC_CALLABLE | MDOC_PARSED | MDOC_EXPLICIT }, /* Xo */
        /* XXX - .Fo supposed to be (but isn't) callable. */
        { macro_scoped, MDOC_EXPLICIT }, /* Fo */ 
-       /* XXX - .Fc supposed to be (but isn't) callable. */
-       { macro_scoped_close, MDOC_EXPLICIT }, /* Fc */ 
+       { macro_scoped_close, MDOC_EXPLICIT | MDOC_CALLABLE | MDOC_PARSED }, /* Fc */ 
        { macro_constant_scoped, MDOC_CALLABLE | MDOC_PARSED | MDOC_EXPLICIT }, /* Oo */
        { macro_scoped_close, MDOC_EXPLICIT | MDOC_CALLABLE | MDOC_PARSED }, /* Oc */
        { macro_scoped, MDOC_EXPLICIT }, /* Bk */
@@ -922,11 +921,8 @@ macro_scoped(MACRO_PROT_ARGS)
 
                if (ARGS_ERROR == c)
                        return(0);
-               if (ARGS_PUNCT == c)
-                       break;
                if (ARGS_EOLN == c)
                        break;
-
                if (ARGS_PHRASE == c) {
                        /*
                        if ( ! mdoc_phrase(mdoc, line, lastarg, buf))
@@ -953,10 +949,10 @@ macro_scoped(MACRO_PROT_ARGS)
                break;
        }
        
-       if ( ! rewind_subblock(MDOC_HEAD, mdoc, tok, line, ppos))
-               return(0);
        if (1 == ppos && ! append_delims(mdoc, line, pos, buf))
                return(0);
+       if ( ! rewind_subblock(MDOC_HEAD, mdoc, tok, line, ppos))
+               return(0);
 
        if ( ! mdoc_body_alloc(mdoc, line, ppos, tok))
                return(0);