Support proxy server address without a protocol

This commit is contained in:
Christian Dywan 2009-03-31 01:10:35 +02:00
parent ddf5c70fb1
commit 31bf9962fa

View file

@ -1286,8 +1286,17 @@ soup_session_settings_notify_http_proxy_cb (MidoriWebSettings* settings,
http_proxy = g_strdup (g_getenv ("http_proxy")); http_proxy = g_strdup (g_getenv ("http_proxy"));
else else
http_proxy = katze_object_get_string (settings, "http-proxy"); http_proxy = katze_object_get_string (settings, "http-proxy");
/* soup_uri_new expects a non-NULL string */ /* soup_uri_new expects a non-NULL string with a protocol */
proxy_uri = soup_uri_new (http_proxy ? http_proxy : ""); if (http_proxy && g_str_has_prefix (http_proxy, "http://"))
proxy_uri = soup_uri_new (http_proxy);
else if (http_proxy && *http_proxy)
{
gchar* fixed_http_proxy = g_strconcat ("http://", http_proxy, NULL);
proxy_uri = soup_uri_new (fixed_http_proxy);
g_free (fixed_http_proxy);
}
else
proxy_uri = NULL;
g_free (http_proxy); g_free (http_proxy);
g_object_set (session, "proxy-uri", proxy_uri, NULL); g_object_set (session, "proxy-uri", proxy_uri, NULL);
if (proxy_uri) if (proxy_uri)