author | Wolfgang Rosenauer <wr@rosenauer.org> |
Thu, 23 May 2019 09:16:13 +0200 | |
branch | firefox67 |
changeset 1094 | a25638dad81d |
parent 1093 | 3942c205588b |
child 1095 | 9c008b241362 |
permissions | -rw-r--r-- |
0 | 1 |
From: Wolfgang Rosenauer |
2 |
Subject: Do not use gconf for proxy settings if not running within Gnome |
|
3 |
||
4 |
Index: toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp |
|
5 |
=================================================================== |
|
6 |
RCS file: /cvsroot/mozilla/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp,v |
|
7 |
retrieving revision 1.1 |
|
367 | 8 |
|
9 |
diff --git a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp b/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp |
|
10 |
--- a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp |
|
11 |
+++ b/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp |
|
1093 | 12 |
@@ -57,25 +57,27 @@ NS_IMETHODIMP |
1085 | 13 |
nsUnixSystemProxySettings::GetMainThreadOnly(bool* aMainThreadOnly) { |
14 |
// dbus prevents us from being threadsafe, but this routine should not block |
|
15 |
// anyhow |
|
568
2c74c5927ea2
first working Aurora 18 build
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
419
diff
changeset
|
16 |
*aMainThreadOnly = true; |
2c74c5927ea2
first working Aurora 18 build
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
419
diff
changeset
|
17 |
return NS_OK; |
2c74c5927ea2
first working Aurora 18 build
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
419
diff
changeset
|
18 |
} |
0 | 19 |
|
1093 | 20 |
void nsUnixSystemProxySettings::Init() { |
382
67f876aafae8
lift up to Gecko 11beta
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
367
diff
changeset
|
21 |
- mGSettings = do_GetService(NS_GSETTINGSSERVICE_CONTRACTID); |
419
f6b055dd94bc
commit Aurora 13 state
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
382
diff
changeset
|
22 |
- if (mGSettings) { |
1085 | 23 |
- mGSettings->GetCollectionForSchema( |
24 |
- NS_LITERAL_CSTRING("org.gnome.system.proxy"), |
|
25 |
- getter_AddRefs(mProxySettings)); |
|
650 | 26 |
- } |
27 |
- if (!mProxySettings) { |
|
28 |
- mGConf = do_GetService(NS_GCONFSERVICE_CONTRACTID); |
|
1093 | 29 |
- } |
650 | 30 |
+ // only use GSettings if that is a GNOME session |
0 | 31 |
+ const char* sessionType = PR_GetEnv("DESKTOP_SESSION"); |
32 |
+ if (sessionType && !strcmp(sessionType, "gnome")) { |
|
382
67f876aafae8
lift up to Gecko 11beta
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
367
diff
changeset
|
33 |
+ mGSettings = do_GetService(NS_GSETTINGSSERVICE_CONTRACTID); |
419
f6b055dd94bc
commit Aurora 13 state
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
382
diff
changeset
|
34 |
+ if (mGSettings) { |
f6b055dd94bc
commit Aurora 13 state
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
382
diff
changeset
|
35 |
+ mGSettings->GetCollectionForSchema(NS_LITERAL_CSTRING("org.gnome.system.proxy"), |
f6b055dd94bc
commit Aurora 13 state
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
382
diff
changeset
|
36 |
+ getter_AddRefs(mProxySettings)); |
f6b055dd94bc
commit Aurora 13 state
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
382
diff
changeset
|
37 |
+ } |
650 | 38 |
+ if (!mProxySettings) { |
39 |
+ mGConf = do_GetService(NS_GCONFSERVICE_CONTRACTID); |
|
40 |
+ } |
|
0 | 41 |
} |
42 |
||
1085 | 43 |
bool nsUnixSystemProxySettings::IsProxyMode(const char* aMode) { |
44 |
nsAutoCString mode; |
|
45 |
return NS_SUCCEEDED(mGConf->GetString( |
|
1093 | 46 |
NS_LITERAL_CSTRING("/system/proxy/mode"), mode)) && |
47 |
mode.EqualsASCII(aMode); |
|
48 |
} |