diff options
author | Richard Wilson <rjw@netsurf-browser.org> | 2006-07-17 23:57:42 +0000 |
---|---|---|
committer | Richard Wilson <rjw@netsurf-browser.org> | 2006-07-17 23:57:42 +0000 |
commit | 675df80871630658b4cf16b46118320afbf61bc4 (patch) | |
tree | a7ea139f4005d997c39b2c25ba7c7931f9f8b3ed | |
parent | ca154b54c073aa897de95282b4555db96db0025f (diff) | |
download | netsurf-675df80871630658b4cf16b46118320afbf61bc4.tar.gz netsurf-675df80871630658b4cf16b46118320afbf61bc4.tar.bz2 |
Allow broken meta refresh commands (fix mail.google.com, bug 1522982)
svn path=/trunk/netsurf/; revision=2777
-rw-r--r-- | render/html.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/render/html.c b/render/html.c index 4507609af..ca95f2f0e 100644 --- a/render/html.c +++ b/render/html.c @@ -428,12 +428,21 @@ bool html_meta_refresh(struct content *c, xmlNode *head) content_broadcast(c, CONTENT_MSG_REFRESH, msg_data); break; } - + for ( ; url <= end - 4; url++) { if (!strncasecmp(url, "url=", 4)) break; } + /* mail.google.com sends out the broken format "<n>, url='<url>'", so + * special case this */ + if (url <= end - 4) { + if ((url[4] == '\'') && (end[-1] == '\'')) { + *--end = '\0'; + url++; + } + } + if (url <= end - 4) { res = url_join(url + 4, c->data.html.base_url, &refresh); |