Unless I'm misunderstanding this, it looks like SOCKS is always enabled if the Network Proxy setting is "manual". Not only is this silly unless we've specifically set SOCKS, but it's also quite likely that there may be no SOCKS setting, so at the very least we should check whether KEY_SOCKS_HOST is null already, because if it is, we should disable SOCKS.
From "main-session.c":
static void proxy_from_ gconf (void)
set_socks_
{
GConfClient *client;
gchar *mode, *host;
gint port;
client = mail_config_ get_gconf_ client ();
mode = gconf_client_ get_string (client, MODE_PROXY, NULL); get_string (client, KEY_SOCKS_HOST, NULL); /* NULL-GError */ get_int (client, KEY_SOCKS_PORT, NULL); /* NULL-GError */ session_ set_socks_ proxy (session, host, port);
if (!g_strcmp0(mode, "manual")) {
host = gconf_client_
port = gconf_client_
camel_
g_free (host);
}
g_free (mode);
}
Unless I'm misunderstanding this, it looks like SOCKS is always enabled if the Network Proxy setting is "manual". Not only is this silly unless we've specifically set SOCKS, but it's also quite likely that there may be no SOCKS setting, so at the very least we should check whether KEY_SOCKS_HOST is null already, because if it is, we should disable SOCKS.