[Xfce4-commits] <midori:master> Don't prefetch IP addresses and bail out if the soup URI is invalid
Christian Dywan
noreply at xfce.org
Tue Oct 13 02:40:02 CEST 2009
Updating branch refs/heads/master
to e4f163447c33db4341f01317013e8e1a47b10301 (commit)
from 8a62c9ee7a48095928790b0bc8320ec5f5cbbcfd (commit)
commit e4f163447c33db4341f01317013e8e1a47b10301
Author: Alexander Butenko <a.butenka at gmail.com>
Date: Tue Oct 13 02:37:52 2009 +0200
Don't prefetch IP addresses and bail out if the soup URI is invalid
extensions/dnsprefetch.c | 30 +++++++++++++++++++++++-------
1 files changed, 23 insertions(+), 7 deletions(-)
diff --git a/extensions/dnsprefetch.c b/extensions/dnsprefetch.c
index 4a00be3..83b52e9 100644
--- a/extensions/dnsprefetch.c
+++ b/extensions/dnsprefetch.c
@@ -21,18 +21,34 @@ static gchar* hosts = NULL;
static int host_count;
static void
-dnsprefetch_do_prefetch (WebKitWebView *web_view,
- gchar *title,
- gchar *uri,
+dnsprefetch_do_prefetch (WebKitWebView* web_view,
+ const gchar* title,
+ const char* uri,
gpointer user_data)
{
- SoupURI* s_uri;
+ SoupURI* s_uri;
- /* FIXME: Ignore IP addresses */
- if (!(uri && g_str_has_prefix (uri, "http")))
+ if (!uri)
+ return;
+ s_uri = soup_uri_new (uri);
+ if (!s_uri)
return;
- s_uri = soup_uri_new (uri);
+ #if GLIB_CHECK_VERSION (2, 22, 0)
+ if (g_hostname_is_ip_address (s_uri->host))
+ #else
+ if (g_ascii_isdigit (s_uri->host[0]) && g_strstr_len (s_uri->host, 4, "."))
+ #endif
+ {
+ soup_uri_free (s_uri);
+ return;
+ }
+ if (!g_str_has_prefix (uri, "http"))
+ {
+ soup_uri_free (s_uri);
+ return;
+ }
+
if (!g_regex_match_simple (s_uri->host, hosts,
G_REGEX_CASELESS, G_REGEX_MATCH_NOTEMPTY))
{
More information about the Xfce4-commits
mailing list