From f2952c9fb89697290384a97cd27ab6c538430b54 Mon Sep 17 00:00:00 2001 From: Paul Date: Tue, 10 Nov 2015 15:20:23 +0000 Subject: [PATCH] fix bug 3561, 'HTML tag with no href makes message display incorrectly.' based on patch by Andy Balaam --- AUTHORS | 1 + src/gtk/authors.h | 3 ++- src/html.c | 3 +++ 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/AUTHORS b/AUTHORS index b75f349b9..12ed96abd 100644 --- a/AUTHORS +++ b/AUTHORS @@ -307,3 +307,4 @@ contributors (in addition to the above; based on Changelog) Mikhail Kurinnoi Arthur Huillet Blatinox + Andy Balaam diff --git a/src/gtk/authors.h b/src/gtk/authors.h index 46517058e..d4aa975e3 100644 --- a/src/gtk/authors.h +++ b/src/gtk/authors.h @@ -86,11 +86,12 @@ static char *CONTRIBS_LIST[] = { "André Filipe de Assunção e Brito", "Sergei Astanin", "Ruslan N. Balkin", +"Andy Balaam", "Henri Bauer", +"Didier Barvaux", "Fabio Júnior Beneditto", "M. Benkmann", "Wilbert Berendsen", -"Didier Barvaux", "Sébastien Bigaret", "Laurent Bigonville", "Jean-Luc Biord", diff --git a/src/html.c b/src/html.c index 19cb52c84..72df94644 100644 --- a/src/html.c +++ b/src/html.c @@ -649,6 +649,7 @@ static SC_HTMLState sc_html_parse_tag(SC_HTMLParser *parser) parser->state = SC_HTML_BR; } else if (!strcmp(tag->name, "a")) { GList *cur; + parser->href = NULL; for (cur = tag->attr; cur != NULL; cur = cur->next) { if (cur->data && !strcmp(((SC_HTMLAttr *)cur->data)->name, "href")) { g_free(parser->href); @@ -658,6 +659,8 @@ static SC_HTMLState sc_html_parse_tag(SC_HTMLParser *parser) break; } } + if (parser->href == NULL) + parser->href = g_strdup(""); parser->state = SC_HTML_HREF_BEG; } else if (!strcmp(tag->name, "/a")) { parser->state = SC_HTML_HREF; -- 2.25.1