--- a/mozilla-nongnome-proxies.patch Fri Dec 23 18:44:50 2011 +0100
+++ b/mozilla-nongnome-proxies.patch Sun Dec 25 10:36:35 2011 +0100
@@ -5,17 +5,19 @@
===================================================================
RCS file: /cvsroot/mozilla/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp,v
retrieving revision 1.1
-diff -u -p -6 -r1.1 nsUnixSystemProxySettings.cpp
---- toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp 29 Jan 2008 15:58:41 -0000 1.1
-+++ b/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp 17 Apr 2008 19:02:19 -0000
-@@ -69,13 +69,19 @@ private:
+
+diff --git a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp b/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
+--- a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
++++ b/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
+@@ -68,16 +68,23 @@ private:
+ };
NS_IMPL_ISUPPORTS1(nsUnixSystemProxySettings, nsISystemProxySettings)
nsresult
nsUnixSystemProxySettings::Init()
{
-- mGConf = do_GetService(NS_GCONFSERVICE_CONTRACTID);
+ mGConf = do_GetService(NS_GCONFSERVICE_CONTRACTID);
+ // If this is a GNOME session, load gconf and try to use its preferences.
+ // If gconf is not available (which would be stupid) we'll proceed as if
+ // this was not a GNOME session, using *_PROXY environment variables.
@@ -26,6 +28,8 @@
return NS_OK;
}
- PRBool
+ bool
nsUnixSystemProxySettings::IsProxyMode(const char* aMode)
{
+ nsCAutoString mode;
+ return NS_SUCCEEDED(mGConf->GetString(NS_LITERAL_CSTRING("/system/proxy/mode"), mode)) &&