summaryrefslogtreecommitdiff
path: root/sfeed_html.c
diff options
context:
space:
mode:
authorHiltjo Posthuma <hiltjo@codemadness.org>2016-02-28 17:34:45 +0100
committerHiltjo Posthuma <hiltjo@codemadness.org>2016-02-28 17:34:45 +0100
commit502d03d4f3047bdbe7f223354f851b28e16167fd (patch)
treeda15b564b9779418c850b10f345ed42cc2520d28 /sfeed_html.c
parent029bb88fc7244b2281b1a26b19d34c4e2ea12769 (diff)
null-terminate line at newline from getline()
Diffstat (limited to 'sfeed_html.c')
-rw-r--r--sfeed_html.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/sfeed_html.c b/sfeed_html.c
index dd8bdfd..028653b 100644
--- a/sfeed_html.c
+++ b/sfeed_html.c
@@ -19,6 +19,7 @@ printfeed(FILE *fp, struct feed *f)
char *fields[FieldLast];
time_t parsedtime;
unsigned int islink, isnew;
+ ssize_t linelen;
if (f->name[0] != '\0') {
fputs("<h2 id=\"", stdout);
@@ -31,7 +32,9 @@ printfeed(FILE *fp, struct feed *f)
}
fputs("<table cellpadding=\"0\" cellspacing=\"0\">\n", stdout);
- while (getline(&line, &linesize, fp) > 0) {
+ while ((linelen = getline(&line, &linesize, fp)) > 0) {
+ if (line[linelen - 1] == '\n')
+ line[--linelen] = '\0';
if (!parseline(line, fields))
break;
parsedtime = 0;