~mozillateam/thunderbird/thunderbird-beta.vivid

« back to all changes in this revision

Viewing changes to debian/patches/avoid-dbus-roundtrip-for-httpchannel.patch

  • Committer: Chris Coulson
  • Date: 2012-06-01 18:25:14 UTC
  • Revision ID: chris.coulson@canonical.com-20120601182514-ojfdft2yw56if0ah
* New upstream release from the beta channel (THUNDERBIRD_13_0b4_BUILD1)
* Fix for NSS libs not being signed, breaking FIPS
  - update debian/rules
* Update StartupWMClass to the correct name
  - update debian/thunderbird.desktop.in
  - update debian/rules
* Switch back to gcc 4.6 until LP #1003733 is fixed
  - update debian/config/branch.mk
* Actually ship the updated Apport hook. This got lost somehow
  - update debian/apport/source_thunderbird.py.in
* -ENOTENOUGHCAFFEINE
* Shuffle the order of google-breakpad/src/common/dwarf/Makefile.in to fix a
  variable substitution issue, which was causing some objects to be built with
  the wrong compiler flags, resulting in dump_syms crashing (LP: #1002590)
  - add debian/patches/fix-makefile-substitution-bug.patch
* Build with --disable-methodjit on armel in quantal
  - update debian/config/mozconfig.in
* New upstrream release from the beta channel (THUNDERBIRD_13_0b2_BUILD1)
* Backport patch from mozilla-central to fix a crashreporter build
  failure with gcc 4.7
  - add debian/patches/fix-crashreporter-ftbfs-with-gcc4.7.patch
  - update debian/patches/series
* Turn the crashreporter back on again
  - update debian/rules
* New upstream release from the beta channel (THUNDERBIRD_13_0b1_BUILD1)
* Refresh build-depends:
  - Bump minimum GTK version to 2.14 as we build with GIO support
  - Add minimum requirement for glib (2.18)
  - Drop libidl-dev, this doesn't appear to be needed now
  - Bump minimum NSPR version to 4.9.0 for --enable-system-nspr builds
  - Bump minimum sqlite version to 3.7.10 for --enable-system-sqlite
    builds
  - Bump minimum NSS version to 3.13.2 for --enable-system-nss builds
* Clean up the file exclude list and add comments for excluded files
  - update debian/build/create-tarball.py
* Make it easy to run Thunderbird in valgrind for builds that are compiled
  with explicit valgrind support
  - update debian/thunderbird.sh.in
* Refresh patches
  - update debian/patches/revert-bmo621446-investigation.patch
  - update debian/patches/theme-refresh-addressbook-toolbar-icons.patch
  - update debian/patches/theme-refresh-compose-toolbar-icons.patch
  - update debian/patches/theme-refresh-messenger-toolbar-icons.patch
  - update debian/patches/dont-include-hyphenation-patterns.patch
* Drop patches fixed upstream
  - remove debian/patches/use-menubar-text-colour-on-tabbar.patch
  - remove debian/patches/no-sps-profiler-on-unsupported-archs.patch
  - remove debian/patches/avoid-dbus-roundtrip-for-httpchannel.patch
  - update debian/patches/series
* Bump debhelper compat to 7
  - update debian/apport/blacklist.in
  - update debian/appoty/source_thunderbird.py.in
  - update debian/compat
  - update debian/config/mozconfig.in
  - update debian/control.in
  - update debian/rules
  - update debian/thunderbird-dev.install.in
  - update debian/thunderbird-dev.links.in
  - update debian/thunderbird-globalmenu.dirs.in
  - update debian/thunderbird-gnome-support.install.in
  - update debian/thunderbird.dirs.in
  - update debian/thunderbird.install.in
  - update debian/thunderbird.links.in
  - update debian/thunderbird.lintian-overrides.in
  - update debian/thunderbird.sh.in
* Use "general.useragent.locale" to select the searchengine locale
  - remove debian/patches/distro-locale-searchplugins.patch
  - add debian/patches/dont-override-general-useragent-locale.patch
  - update debian/patches/series
* Drop no-dynamic-nss-softokn.patch. This patch has no documentation and
  it doesn't look like it's actually useful for anything
* Apport hook improvements:
  - Add support for reporting preference defaults that are set by extensions
  - When reporting preferences, record the source of each preference
  - Report plugin packages for plugins that are installed with the
    package manager
  - Add some addon manager related prefs to the whitelist
  - Display additional metadata in the extensions report
  - Take "default-to-compatible" in to account when determining whether
    the user is running incompatible addons
  - Attach submitted crash ID's to bug reports
  - Report if files in the profile folder have broken permissions
* Update compare-locales to 0.9.5
* Disable crash reporter on quantal
  - update debian/rules
* New upstream stable release (THUNDERBIRD_12_0_1_BUILD1)
  - see LP: #987305 for USN information
* Update globalmenu-extension to v3.2.3
  - Fix regression introduced by the fix for LP: #915888
* Call xvfb-run with "-a" in case there are other servers running on the
  builder
  - update debian/build/testsuite.mk
* Thunderbird recommends libcanberra0 now that bmo: #635918 has landed
  (LP: #732572)
  - update debian/control{,in}
* Refresh patches
  - update debian/patches/avoid-dbus-roundtrip-for-httpchannel.patch
  - update debian/patches/no-sps-profiler-on-unsupported-archs.patch
* Drop patches fixed upstream
  - remove debian/patches/ctypes-callback-reentry-fix.patch
  - update debian/patches/series
* Drop the version number from the install path, like we've done for Firefox
  - update debian/rules
  - update debian/thunderbird-dev.install.in
  - update debian/thunderbird-dev.links.in
  - update debian/thunderbird.dirs.in
  - update debian/thunderbird.links.in
  - update debian/thunderbird.lintian-overrides.in
* Fix LP: #939652 - Web search functionality is broken in Ubuntu builds.
  Ship the localized Opensearch plugins in distribution/searchplugins.
  Also add a patch to use the locale of the global chrome package to
  select the search locale, like we do with Firefox. Add another patch
  to fix various bugs in webSearchProvider.js (see bmo: #733802)
  - add debian/patches/distro-locale-searchplugins.patch
  - add debian/patches/websearchprovider-fixes.patch
  - update debian/rules
  - update debian/thunderbird.dirs.in
  - update debian/thunderbird.install.in
  - update debian/thunderbird.links.in
  - update debian/vendor.js
* Make the language packs Architecture: any. Whilst they are actually
  architecture independent, we do install them in to /usr/lib (as the
  extensions location is shared with architecture-specific extensions).
  This also avoids the problem of offering incompatible language pack
  upgrades to users on architectures where Thunderbird fails to build
  (I'm looking at you, powerpc)
  - update debian/control.langpacks
  - update debian/control.langpacks.unavail
  - update debian/rules
  - refresh debian/control
* Disable fix-build-failure-without-yarr-jit.patch, as it needs some work.
  This means that there is currently no powerpc support

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
# HG changeset patch
2
 
# Parent 9bde0d25d76e4ef301668a8016f6edcba1662826
3
 
# User Chris Coulson <chris.coulson@canonical.com>
4
 
Bug 716467 - Don't call g_settings_new each time we look up system proxy settings
5
 
 
6
 
Index: mozilla/mozilla/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
7
 
===================================================================
8
 
--- mozilla.orig/mozilla/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp 2012-02-22 14:20:22.000000000 +0000
9
 
+++ mozilla/mozilla/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp      2012-02-23 16:57:18.783367775 +0000
10
 
@@ -50,6 +50,7 @@
11
 
 #include "nsNetUtil.h"
12
 
 #include "nsISupportsPrimitives.h"
13
 
 #include "nsIGSettingsService.h"
14
 
+#include "nsInterfaceHashtable.h"
15
 
 
16
 
 class nsUnixSystemProxySettings : public nsISystemProxySettings {
17
 
 public:
18
 
@@ -64,6 +65,8 @@
19
 
   
20
 
   nsCOMPtr<nsIGConfService> mGConf;
21
 
   nsCOMPtr<nsIGSettingsService> mGSettings;
22
 
+  nsCOMPtr<nsIGSettingsCollection> mProxySettings;
23
 
+  nsInterfaceHashtable<nsCStringHashKey, nsIGSettingsCollection> mSchemeProxySettings;
24
 
   bool IsProxyMode(const char* aMode);
25
 
   nsresult SetProxyResultFromGConf(const char* aKeyBase, const char* aType, nsACString& aResult);
26
 
   nsresult GetProxyFromGConf(const nsACString& aScheme, const nsACString& aHost, PRInt32 aPort, nsACString& aResult);
27
 
@@ -76,8 +79,14 @@
28
 
 nsresult
29
 
 nsUnixSystemProxySettings::Init()
30
 
 {
31
 
+  mSchemeProxySettings.Init(5);
32
 
   mGConf = do_GetService(NS_GCONFSERVICE_CONTRACTID);
33
 
   mGSettings = do_GetService(NS_GSETTINGSSERVICE_CONTRACTID);
34
 
+  if (mGSettings) {
35
 
+    mGSettings->GetCollectionForSchema(NS_LITERAL_CSTRING("org.gnome.system.proxy"),
36
 
+                                       getter_AddRefs(mProxySettings));
37
 
+  }
38
 
+
39
 
   return NS_OK;
40
 
 }
41
 
 
42
 
@@ -92,22 +101,17 @@
43
 
 nsresult
44
 
 nsUnixSystemProxySettings::GetPACURI(nsACString& aResult)
45
 
 {
46
 
-  if (mGSettings) {
47
 
-    nsCOMPtr<nsIGSettingsCollection> proxy_settings;
48
 
-    mGSettings->GetCollectionForSchema(NS_LITERAL_CSTRING("org.gnome.system.proxy"), 
49
 
-                                       getter_AddRefs(proxy_settings));
50
 
-    if (proxy_settings) {
51
 
-      nsCString proxyMode;
52
 
-      // Check if mode is auto
53
 
-      nsresult rv = proxy_settings->GetString(NS_LITERAL_CSTRING("mode"), proxyMode);
54
 
-      if (rv == NS_OK && proxyMode.Equals("auto")) {
55
 
-        return proxy_settings->GetString(NS_LITERAL_CSTRING("autoconfig-url"), aResult);
56
 
-      }
57
 
-      /* The org.gnome.system.proxy schema has been found, but auto mode is not set.
58
 
-       * Don't try the GConf and return empty string. */
59
 
-      aResult.Truncate();
60
 
-      return NS_OK;
61
 
+  if (mProxySettings) {
62
 
+    nsCString proxyMode;
63
 
+    // Check if mode is auto
64
 
+    nsresult rv = mProxySettings->GetString(NS_LITERAL_CSTRING("mode"), proxyMode);
65
 
+    if (rv == NS_OK && proxyMode.Equals("auto")) {
66
 
+      return mProxySettings->GetString(NS_LITERAL_CSTRING("autoconfig-url"), aResult);
67
 
     }
68
 
+    /* The org.gnome.system.proxy schema has been found, but auto mode is not set.
69
 
+     * Don't try the GConf and return empty string. */
70
 
+    aResult.Truncate();
71
 
+    return NS_OK;
72
 
   }
73
 
 
74
 
   if (mGConf && IsProxyMode("auto")) {
75
 
@@ -266,10 +270,16 @@
76
 
 nsUnixSystemProxySettings::SetProxyResultFromGSettings(const char* aKeyBase, const char* aType,
77
 
                                                        nsACString& aResult)
78
 
 {
79
 
-  nsCOMPtr<nsIGSettingsCollection> proxy_settings;
80
 
-  nsresult rv = mGSettings->GetCollectionForSchema(nsDependentCString(aKeyBase),
81
 
-                                                   getter_AddRefs(proxy_settings));
82
 
-  NS_ENSURE_SUCCESS(rv, rv);
83
 
+  nsDependentCString key(aKeyBase);
84
 
+
85
 
+  nsCOMPtr<nsIGSettingsCollection> proxy_settings = mSchemeProxySettings.Get(key);
86
 
+  nsresult rv;
87
 
+  if (!proxy_settings) {
88
 
+    rv = mGSettings->GetCollectionForSchema(key, getter_AddRefs(proxy_settings));
89
 
+    NS_ENSURE_SUCCESS(rv, rv);
90
 
+
91
 
+    mSchemeProxySettings.Put(key, proxy_settings);
92
 
+  }
93
 
 
94
 
   nsCAutoString host;
95
 
   rv = proxy_settings->GetString(NS_LITERAL_CSTRING("host"), host);
96
 
@@ -451,15 +461,8 @@
97
 
                                                  PRInt32 aPort,
98
 
                                                  nsACString& aResult)
99
 
 {
100
 
-  nsCOMPtr<nsIGSettingsCollection> proxy_settings;
101
 
-  nsresult rv;
102
 
-
103
 
-  rv = mGSettings->GetCollectionForSchema(NS_LITERAL_CSTRING("org.gnome.system.proxy"),
104
 
-                                          getter_AddRefs(proxy_settings));
105
 
-  NS_ENSURE_SUCCESS(rv, rv);
106
 
-
107
 
   nsCString proxyMode; 
108
 
-  rv = proxy_settings->GetString(NS_LITERAL_CSTRING("mode"), proxyMode);
109
 
+  nsresult rv = mProxySettings->GetString(NS_LITERAL_CSTRING("mode"), proxyMode);
110
 
   NS_ENSURE_SUCCESS(rv, rv);
111
 
   
112
 
   if (!proxyMode.Equals("manual")) {
113
 
@@ -468,7 +471,7 @@
114
 
   }
115
 
 
116
 
   nsCOMPtr<nsIArray> ignoreList;
117
 
-  if (NS_SUCCEEDED(proxy_settings->GetStringList(NS_LITERAL_CSTRING("ignore-hosts"),
118
 
+  if (NS_SUCCEEDED(mProxySettings->GetStringList(NS_LITERAL_CSTRING("ignore-hosts"),
119
 
                                                  getter_AddRefs(ignoreList))) && ignoreList) {
120
 
     PRUint32 len = 0;
121
 
     ignoreList->GetLength(&len);
122
 
@@ -525,7 +528,7 @@
123
 
   rv = aURI->GetPort(&port);
124
 
   NS_ENSURE_SUCCESS(rv, rv);
125
 
 
126
 
-  if (mGSettings) {
127
 
+  if (mProxySettings) {
128
 
     rv = GetProxyFromGSettings(scheme, host, port, aResult);
129
 
     if (rv == NS_OK)
130
 
       return rv;