From 4c2b939bbb1991aaff9ad71d5aa0456793f2e787 Mon Sep 17 00:00:00 2001 From: Hiltjo Posthuma Date: Tue, 27 Apr 2021 19:36:27 +0200 Subject: use the last href attribute value if there are multiple set Input to reproduce: Old value: "https://codemadness.org/ahttps://codemadness.org/b" New value: "https://codemadness.org/b" same with RSS --- sfeed.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/sfeed.c b/sfeed.c index 865c6ff..f01b280 100644 --- a/sfeed.c +++ b/sfeed.c @@ -785,12 +785,18 @@ xmlattrstart(XMLParser *p, const char *t, size_t tl, const char *n, size_t nl) } return; } + if (attrispermalink.len && isattr(n, nl, STRP("ispermalink"))) string_clear(&attrispermalink); else if (attrrel.len && isattr(n, nl, STRP("rel"))) string_clear(&attrrel); else if (attrtype.len && isattr(n, nl, STRP("type"))) string_clear(&attrtype); + else if (tmpstr.len && + (isattr(n, nl, STRP("href")) || + isattr(n, nl, STRP("term")) || + isattr(n, nl, STRP("url")))) + string_clear(&tmpstr); /* use the last value for multiple attribute values */ } /* NOTE: this handler can be called multiple times if the data in this -- cgit v1.2.3