aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sam.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/sam.c b/sam.c
index 70dc6c9..3ddd146 100644
--- a/sam.c
+++ b/sam.c
@@ -572,8 +572,11 @@ static char *parse_delimited(const char **s, int type) {
static char *parse_text(const char **s) {
skip_spaces(s);
- if (**s != '\n')
- return parse_delimited(s, CMD_TEXT);
+ if (**s != '\n') {
+ const char *before = *s;
+ char *text = parse_delimited(s, CMD_TEXT);
+ return (!text && *s != before) ? strdup("") : text;
+ }
Buffer buf;
buffer_init(&buf);