aboutsummaryrefslogtreecommitdiff
path: root/src/sc_parse.c
diff options
context:
space:
mode:
authorThomas White <taw@bitwiz.org.uk>2018-03-07 20:10:41 +0100
committerThomas White <taw@bitwiz.org.uk>2018-03-07 20:10:41 +0100
commitf4c56706bc083f9792420fb1af2ae8cdf9651bb7 (patch)
tree8dbcdabec3f151d7d517827e04fac9047fe0081f /src/sc_parse.c
parent74ad51de1a6dc74b9c253c254cccfe543d0c69b0 (diff)
Don't create runs for \newpara
Removes a load more special cases
Diffstat (limited to 'src/sc_parse.c')
-rw-r--r--src/sc_parse.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/sc_parse.c b/src/sc_parse.c
index b39d183..23bf2d0 100644
--- a/src/sc_parse.c
+++ b/src/sc_parse.c
@@ -541,10 +541,19 @@ static void separate_newlines(SCBlock *bl)
bl->contents = NULL;
nb = bl;
} else {
- sc_block_append(bl, strdup("newpara"), NULL, NULL, &nb);
+ sc_block_append(bl, strdup("newpara"),
+ NULL, NULL, &nb);
}
+
+ /* Follow \newpara with an empty block so that
+ * all paragraphs have at least one SCBlock */
+ sc_block_append(nb, NULL, NULL, strdup(""),
+ NULL);
+
+ /* Add any text after the \n */
if ( strlen(npos+1) > 0 ) {
- sc_block_append(nb, NULL, NULL, strdup(npos+1), &nb);
+ sc_block_append(nb, NULL, NULL,
+ strdup(npos+1), &nb);
}
npos[0] = '\0';
}