diff options
author | John Mark Bell <jmb@netsurf-browser.org> | 2006-01-28 16:01:19 +0000 |
---|---|---|
committer | John Mark Bell <jmb@netsurf-browser.org> | 2006-01-28 16:01:19 +0000 |
commit | b9de635dab672a829a298b95154cc42095b4411e (patch) | |
tree | cff47f5455c1a7eb0aa5800b2b01ad27afb0e34c | |
parent | 8fc96b98625c196cc6ffc4d616e40cd343aa84b5 (diff) | |
download | netsurf-b9de635dab672a829a298b95154cc42095b4411e.tar.gz netsurf-b9de635dab672a829a298b95154cc42095b4411e.tar.bz2 |
[project @ 2006-01-28 16:01:19 by jmb]
Fix meta-refresh implementation
svn path=/import/netsurf/; revision=2049
-rw-r--r-- | render/html.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/render/html.c b/render/html.c index cfcb789ea..0290dd2a6 100644 --- a/render/html.c +++ b/render/html.c @@ -372,6 +372,8 @@ bool html_convert(struct content *c, int width, int height) /** * Search for meta refresh * + * http://wp.netscape.com/assist/net_sites/pushpull.html + * * \param c content structure * \param head xml node of head element * \return true on success, false otherwise (error reported) @@ -411,6 +413,22 @@ bool html_meta_refresh(struct content *c, xmlNode *head) msg_data.delay = (int)strtol((char *) content, &url, 10); + if (url == end) { + /* Just delay specified, so refresh current page */ + xmlFree(content); + + c->refresh = talloc_strdup(c, c->url); + if (!c->refresh) { + msg_data.error = messages_get("NoMemory"); + content_broadcast(c, + CONTENT_MSG_ERROR, msg_data); + return false; + } + + content_broadcast(c, CONTENT_MSG_REFRESH, msg_data); + break; + } + for ( ; url <= end - 4; url++) { if (!strncasecmp(url, "url=", 4)) break; |