sfeed

Simple RSS and Atom feed parser
git clone https://git.sinitax.com/codemadness/sfeed
Log | Files | Refs | README | LICENSE | Upstream | sfeed.txt

commit 4a7f419877607b735b26c56dacd566023c3d7da7
parent 1226cf84fdae3396499c5e1efc742391e537103a
Author: Hiltjo Posthuma <hiltjo@codemadness.org>
Date:   Sun, 10 Apr 2016 20:08:02 +0200

xml: stricter check of entity: must end with ';', ...

... zero output buffer if codepoint length is 0

Diffstat:
Mxml.c | 5++---
1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/xml.c b/xml.c @@ -280,10 +280,9 @@ xml_numericentitytostr(const char *e, char *buf, size_t bufsiz) else l = strtoul(e, &end, 10); /* invalid value or not a well-formed entity */ - if (errno != 0 || (*end != '\0' && *end != ';')) - return 0; - if (!(len = xml_codepointtoutf8(l, &cp))) + if (errno || *end != ';') return 0; + len = xml_codepointtoutf8(l, &cp); /* make string */ for (b = 0; b < len; b++) buf[b] = (cp >> (8 * (len - 1 - b))) & 0xff;