diff options
| -rw-r--r-- | mozilla-670719.patch | 53 | ||||
| -rw-r--r-- | mozilla-696393.patch | 133 | ||||
| -rw-r--r-- | mozilla-build-s390.patch | 11 | ||||
| -rw-r--r-- | mozilla-missing-cflags.patch | 9 | ||||
| -rw-r--r-- | remove-static.patch | 11 | ||||
| -rw-r--r-- | thunderbird.spec | 45 | ||||
| -rw-r--r-- | xulrunner-2.0-NetworkManager09.patch | 51 | ||||
| -rw-r--r-- | xulrunner-2.0-network-link-service.patch | 274 | ||||
| -rw-r--r-- | xulrunner-9.0-secondary-ipc.patch | 60 | 
9 files changed, 27 insertions, 620 deletions
diff --git a/mozilla-670719.patch b/mozilla-670719.patch deleted file mode 100644 index afae907..0000000 --- a/mozilla-670719.patch +++ /dev/null @@ -1,53 +0,0 @@ -# HG changeset patch -# User Mike Hommey <mh+mozilla@glandium.org> -# Date 1313846520 -7200 -# Node ID fdc3b63938f5a76d99c1e2bb12fd448465debc94 -# Parent  07a5a618ebe3f67b23100ceb1b51e92bb79be0cd -Bug 670719 - Only add -DENABLE_JIT=1 to CXXFLAGS if any of trace/method/yarr jit is enabled. - -diff --git a/js/src/Makefile.in b/js/src/Makefile.in ---- a/js/src/Makefile.in -+++ b/js/src/Makefile.in -@@ -433,16 +433,19 @@ CPPSRCS += \ - 		YarrPattern.cpp \ - 		YarrSyntaxChecker.cpp \ - 		$(NULL) - else -  - ############################################### - # BEGIN include sources for the Nitro assembler - # -+ -+ENABLE_YARR_JIT = 1 -+ - VPATH += 	$(srcdir)/assembler \ - 		$(srcdir)/assembler/wtf \ - 		$(srcdir)/assembler/jit \ - 		$(srcdir)/assembler/assembler \ - 		$(srcdir)/methodjit \ - 		$(srcdir)/yarr \ - 		$(NONE) -  -@@ -1070,17 +1073,21 @@ endif -  - ############################################### - # BEGIN kludges for the Nitro assembler - # -  - # Needed to "configure" it correctly.  Unfortunately these - # flags wind up being applied to all code in js/src, not just - # the code in js/src/assembler. --CXXFLAGS += -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1 -+CXXFLAGS += -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -+ -+ifneq (,$(ENABLE_YARR_JIT)$(ENABLE_TRACEJIT)$(ENABLE_METHODJIT)) -+CXXFLAGS +=  -DENABLE_JIT=1 -+endif -  - INCLUDES +=	-I$(srcdir)/assembler -I$(srcdir)/yarr -  - ifdef ENABLE_METHODJIT - # Build a standalone test program that exercises the assembler - # sources a bit. - TESTMAIN_OBJS = \ - 		Assertions.$(OBJ_SUFFIX) \ diff --git a/mozilla-696393.patch b/mozilla-696393.patch deleted file mode 100644 index 8859d97..0000000 --- a/mozilla-696393.patch +++ /dev/null @@ -1,133 +0,0 @@ -diff -up xulrunner-9.0/mozilla-beta/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390.cpp.696393 xulrunner-9.0/mozilla-beta/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390.cpp ---- xulrunner-9.0/mozilla-beta/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390.cpp.696393	2011-12-07 07:28:08.000000000 +0100 -+++ xulrunner-9.0/mozilla-beta/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390.cpp	2011-12-09 15:06:10.584998410 +0100 -@@ -200,52 +200,21 @@ invoke_copy_to_stack(PRUint32 paramCount -     } - } -  -+typedef nsresult (*vtable_func)(nsISupports *, PRUint32, PRUint32, PRUint32, PRUint32, double, double); -+ - EXPORT_XPCOM_API(nsresult) - NS_InvokeByIndex(nsISupports* that, PRUint32 methodIndex, -                  PRUint32 paramCount, nsXPTCVariant* params) - { --    PRUint32 *vtable = *(PRUint32 **)that; --    PRUint32 method = vtable[methodIndex]; -+    vtable_func *vtable = *reinterpret_cast<vtable_func **>(that); -+    vtable_func method = vtable[methodIndex]; -     PRUint32 overflow = invoke_count_words (paramCount, params); --    PRUint32 result; -- --    __asm__ __volatile__ --    ( --        "lr    7,15\n\t" --        "ahi   7,-32\n\t" -- --        "lr    3,%3\n\t" --        "sll   3,2\n\t" --        "lcr   3,3\n\t" --        "l     2,0(15)\n\t" --        "la    15,0(3,7)\n\t" --        "st    2,0(15)\n\t" -+    PRUint32 *stack_space = reinterpret_cast<PRUint32 *>(__builtin_alloca((overflow + 8 /* 4 32-bits gpr + 2 64-bits fpr */) * 4)); -  --        "lr    2,%1\n\t" --        "lr    3,%2\n\t" --        "la    4,96(15)\n\t" --        "lr    5,%3\n\t" --        "basr  14,%4\n\t" -+    invoke_copy_to_stack(paramCount, params, stack_space, overflow); -  --        "lr    2,%5\n\t" --        "ld    0,112(7)\n\t" --        "ld    2,120(7)\n\t" --        "lm    3,6,96(7)\n\t" --        "basr  14,%6\n\t" -+    PRUint32 *d_gpr = stack_space + overflow; -+    double *d_fpr = reinterpret_cast<double *>(d_gpr + 4); -  --        "la    15,32(7)\n\t" -- --        "lr    %0,2\n\t" --        : "=r" (result) --        : "r" (paramCount), --          "r" (params), --          "r" (overflow), --          "a" (invoke_copy_to_stack), --          "a" (that), --          "a" (method) --        : "2", "3", "4", "5", "6", "7", "14", "cc", "memory", "%f0", "%f2" --    ); --   --    return result; -+    return method(that, d_gpr[0], d_gpr[1], d_gpr[2], d_gpr[3],  d_fpr[0], d_fpr[1]); - } -- -diff -up xulrunner-9.0/mozilla-beta/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390x.cpp.696393 xulrunner-9.0/mozilla-beta/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390x.cpp ---- xulrunner-9.0/mozilla-beta/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390x.cpp.696393	2011-12-07 07:28:08.000000000 +0100 -+++ xulrunner-9.0/mozilla-beta/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390x.cpp	2011-12-09 15:07:07.609097348 +0100 -@@ -194,55 +194,22 @@ invoke_copy_to_stack(PRUint32 paramCount -     } - } -  -+typedef nsresult (*vtable_func)(nsISupports *, PRUint64, PRUint64, PRUint64, PRUint64, double, double, double, double); -+ - EXPORT_XPCOM_API(nsresult) - NS_InvokeByIndex(nsISupports* that, PRUint32 methodIndex, -                  PRUint32 paramCount, nsXPTCVariant* params) - { --    PRUint64 *vtable = *(PRUint64 **)that; --    PRUint64 method = vtable[methodIndex]; -+    vtable_func *vtable = *reinterpret_cast<vtable_func **>(that); -+    vtable_func method = vtable[methodIndex]; -     PRUint64 overflow = invoke_count_words (paramCount, params); -+    PRUint64 *stack_space = reinterpret_cast<PRUint64 *>(__builtin_alloca((overflow + 8 /* 4 64-bits gpr + 4 64-bits fpr */) * 8)); -     PRUint64 result; -  --    __asm__ __volatile__ --    ( --        "lgr    7,15\n\t" --        "aghi   7,-64\n\t" -- --        "lgr    3,%3\n\t" --        "sllg   3,3,3\n\t" --        "lcgr   3,3\n\t" --        "lg     2,0(15)\n\t" --        "la     15,0(3,7)\n\t" --        "stg    2,0(15)\n\t" -- --        "lgr    2,%1\n\t" --        "lgr    3,%2\n\t" --        "la     4,160(15)\n\t" --        "lgr    5,%3\n\t" --        "basr   14,%4\n\t" -+    invoke_copy_to_stack(paramCount, params, stack_space, overflow); -  --        "lgr    2,%5\n\t" --        "ld     0,192(7)\n\t" --        "ld     2,200(7)\n\t" --        "ld     4,208(7)\n\t" --        "ld     6,216(7)\n\t" --        "lmg    3,6,160(7)\n\t" --        "basr   14,%6\n\t" -+    PRUint64 *d_gpr = stack_space + overflow; -+    double *d_fpr = reinterpret_cast<double *>(d_gpr + 4); -  --        "la     15,64(7)\n\t" -- --        "lgr    %0,2\n\t" --        : "=r" (result) --        : "r" ((PRUint64)paramCount), --          "r" (params), --          "r" (overflow), --          "a" (invoke_copy_to_stack), --          "a" (that), --          "a" (method) --        : "2", "3", "4", "5", "6", "7", "14", "cc", "memory", --	  "%f0", "%f1", "%f2", "%f3", "%f4", "%f5", "%f6", "%f7" --    ); --   --    return result; -+    return method(that, d_gpr[0], d_gpr[1], d_gpr[2], d_gpr[3], d_fpr[0], d_fpr[1], d_fpr[2], d_fpr[3]); - } -- diff --git a/mozilla-build-s390.patch b/mozilla-build-s390.patch deleted file mode 100644 index 2bfe1d5..0000000 --- a/mozilla-build-s390.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up mozilla-1.9.2/js/src/jstl.h.s390 mozilla-1.9.2/js/src/jstl.h ---- mozilla-1.9.2/js/src/jstl.h.s390	2011-02-18 19:33:24.000000000 +0100 -+++ mozilla-1.9.2/js/src/jstl.h	2011-03-07 08:41:29.000000000 +0100 -@@ -195,7 +195,6 @@ class ReentrancyGuard - JS_ALWAYS_INLINE size_t - RoundUpPow2(size_t x) - { --    typedef tl::StaticAssert<tl::IsSameType<size_t,JSUword>::result>::result _; -     size_t log2 = JS_CEILING_LOG2W(x); -     JS_ASSERT(log2 < tl::BitSize<size_t>::result); -     size_t result = size_t(1) << log2; diff --git a/mozilla-missing-cflags.patch b/mozilla-missing-cflags.patch deleted file mode 100644 index fcef959..0000000 --- a/mozilla-missing-cflags.patch +++ /dev/null @@ -1,9 +0,0 @@ -diff -up comm-1.9.2/mozilla/toolkit/system/gnome/Makefile.in.mozcflags comm-1.9.2/mozilla/toolkit/system/gnome/Makefile.in ---- comm-1.9.2/mozilla/toolkit/system/gnome/Makefile.in.mozcflags	2010-07-26 12:52:38.000000000 +0200 -+++ comm-1.9.2/mozilla/toolkit/system/gnome/Makefile.in	2010-07-26 12:39:34.000000000 +0200 -@@ -93,4 +93,5 @@ CXXFLAGS += \ - 	$(MOZ_GNOMEVFS_CFLAGS) \ - 	$(GLIB_CFLAGS) \ - 	$(MOZ_LIBNOTIFY_CFLAGS) \ -+	$(MOZ_GTK2_CFLAGS) \ - 	$(NULL) diff --git a/remove-static.patch b/remove-static.patch deleted file mode 100644 index 9cc94fb..0000000 --- a/remove-static.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up comm-1.9.2/mozilla/toolkit/crashreporter/google-breakpad/src/tools/linux/dump_syms/Makefile.in.static comm-1.9.2/mozilla/toolkit/crashreporter/google-breakpad/src/tools/linux/dump_syms/Makefile.in ---- comm-1.9.2/mozilla/toolkit/crashreporter/google-breakpad/src/tools/linux/dump_syms/Makefile.in.static	2010-06-23 19:47:11.000000000 +0200 -+++ comm-1.9.2/mozilla/toolkit/crashreporter/google-breakpad/src/tools/linux/dump_syms/Makefile.in	2010-07-12 15:51:41.000000000 +0200 -@@ -64,6 +64,6 @@ FORCE_USE_PIC = 1 -  - #XXX: bug 554854 causes us to be unable to run binaries on the build slaves - # due to them having an older libstdc++ --HOST_LDFLAGS += -static -+#HOST_LDFLAGS += -static -  - include $(topsrcdir)/config/rules.mk diff --git a/thunderbird.spec b/thunderbird.spec index 56a595b..ca1ec55 100644 --- a/thunderbird.spec +++ b/thunderbird.spec @@ -1,5 +1,3 @@ -### TODO use system nss when 3.13.1 pushed to stable (f >= 15) -  %define nspr_version 4.8.8  %define nss_version 3.13.1  %define cairo_version 1.10.0 @@ -31,7 +29,7 @@  Summary:        Mozilla Thunderbird mail/newsgroup client  Name:           thunderbird -Version:        9.0 +Version:        10.0  Release:        1%{?dist}  URL:            http://www.mozilla.org/projects/thunderbird/  License:        MPLv1.1 or GPLv2+ or LGPLv2+ @@ -43,7 +41,7 @@ Group:          Applications/Internet  %endif  Source0:        %{tarball}  %if %{build_langpacks} -Source1:        thunderbird-langpacks-%{version}-20111221.tar.bz2 +Source1:        thunderbird-langpacks-%{version}-20120131.tar.bz2  %endif  Source10:       thunderbird-mozconfig @@ -57,12 +55,12 @@ Source100:      find-external-requires  # Mozilla (XULRunner) patches  Patch0:         thunderbird-install-dir.patch  Patch7:         crashreporter-remove-static.patch -Patch8:         xulrunner-9.0-secondary-ipc.patch -Patch10:        xulrunner-2.0-network-link-service.patch -Patch11:        xulrunner-2.0-NetworkManager09.patch -Patch12:        mozilla-696393.patch +Patch8:         xulrunner-10.0-secondary-ipc.patch +# # cherry-picked from 13afcd4c097c +Patch13:        xulrunner-9.0-secondary-build-fix.patch  # Build patches +Patch100:       xulrunner-10.0-gcc47.patch  # Linux specific  Patch200:       thunderbird-8.0-enable-addons.patch @@ -79,7 +77,7 @@ BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)  %if 0%{?fedora} >= 14 || 0%{?rhel} >= 6  BuildRequires:  nspr-devel >= %{nspr_version}  %endif -%if 0%{?fedora} >= 17 +%if 0%{?fedora} >= 15  BuildRequires:  nss-devel >= %{nss_version}  %endif  %if 0%{?fedora} >= 15 @@ -120,7 +118,7 @@ Requires:       mozilla-filesystem  %if 0%{?fedora} >= 14 || 0%{?rhel} >= 6  Requires:       nspr >= %{nspr_version}  %endif -%if 0%{?fedora} >= 17 +%if 0%{?fedora} >= 15  Requires:       nss >= %{nss_version}  %endif  %if %{?system_sqlite} @@ -171,10 +169,11 @@ cd %{tarballdir}  # Mozilla (XULRunner) patches  cd mozilla  %patch7 -p2 -b .static -%patch8 -p2 -b .secondary-ipc -%patch10 -p1 -b .link-service -%patch11 -p1 -b .NetworkManager09 -%patch12 -p2 -b .696393 +%patch8 -p3 -b .secondary-ipc +%patch13 -p2 -b .secondary-build +%if 0%{?fedora} >= 17 +%patch100 -p1 -b .gcc47 +%endif  cd ..  %patch200 -p1 -b .addons @@ -190,7 +189,7 @@ cd ..  %{__rm} -f .mozconfig  #{__cp} %{SOURCE10} .mozconfig  cat %{SOURCE10} 		\ -%if 0%{?fedora} < 17 +%if 0%{?fedora} < 15    | grep -v system-nss 		\  %endif  %if 0%{?fedora} < 14 && 0%{?rhel} < 6 @@ -212,6 +211,11 @@ echo "ac_add_options --disable-libjpeg-turbo"  >> .mozconfig  %{__cat} %{SOURCE13} >> .mozconfig  %endif +# s390(x) fails to start with jemalloc enabled +%ifarch s390 s390x +echo "ac_add_options --disable-jemalloc" >> .mozconfig +%endif +  %if %{?system_sqlite}  echo "ac_add_options --enable-system-sqlite"  >> .mozconfig  %else @@ -401,7 +405,7 @@ fi  %{mozappdir}/components/binary.manifest  %{mozappdir}/components/libdbusservice.so  %{mozappdir}/components/libmozgnome.so -%{mozappdir}/omni.jar +%{mozappdir}/omni.ja  %{mozappdir}/plugin-container  %{mozappdir}/defaults  %{mozappdir}/dictionaries @@ -427,7 +431,6 @@ fi  %{_datadir}/icons/hicolor/256x256/apps/thunderbird.png  %{_datadir}/icons/hicolor/32x32/apps/thunderbird.png  %{_datadir}/icons/hicolor/48x48/apps/thunderbird.png -%{mozappdir}/hyphenation  %if %{enable_mozilla_crashreporter}  %{mozappdir}/crashreporter  %{mozappdir}/crashreporter.ini @@ -437,11 +440,17 @@ fi  %exclude %{_includedir}/%{name}-%{version}  %exclude %{_libdir}/%{name}-devel-%{version}  %{mozappdir}/chrome.manifest -%{mozappdir}/distribution/extensions +%{mozappdir}/searchplugins  #===============================================================================  %changelog +* Tue Jan 31 2012 Remi Collet <rpms@famillecollet.com> 10.0-1 +- Thunderbird 10.0, sync with rawhide + +* Tue Jan 31 2012 Jan Horak <jhorak@redhat.com> - 10.0-1 +- Update to 10.0 +  * Wed Dec 21 2011 Remi Collet <rpms@famillecollet.com> 9.0-1  - Thunderbird 9.0, sync with rawhide diff --git a/xulrunner-2.0-NetworkManager09.patch b/xulrunner-2.0-NetworkManager09.patch deleted file mode 100644 index 317a1b4..0000000 --- a/xulrunner-2.0-NetworkManager09.patch +++ /dev/null @@ -1,51 +0,0 @@ -https://bugzilla.mozilla.org/show_bug.cgi?id=639959 - ---- source/toolkit/system/dbus/nsNetworkManagerListener.cpp.foo	2011-03-08 14:26:28.167074923 -0600 -+++ source/toolkit/system/dbus/nsNetworkManagerListener.cpp	2011-03-08 14:30:54.260748294 -0600 -@@ -51,15 +51,13 @@ - #define NM_DBUS_SERVICE                 "org.freedesktop.NetworkManager" - #define NM_DBUS_PATH                            "/org/freedesktop/NetworkManager" - #define NM_DBUS_INTERFACE                       "org.freedesktop.NetworkManager" --#define NM_DBUS_SIGNAL_STATE_CHANGE             "StateChange" --typedef enum NMState --{ --        NM_STATE_UNKNOWN = 0, --        NM_STATE_ASLEEP, --        NM_STATE_CONNECTING, --        NM_STATE_CONNECTED, --        NM_STATE_DISCONNECTED --} NMState; -+#define NM_DBUS_SIGNAL_STATE_CHANGE             "StateChange"  /* Deprecated in 0.7.x */ -+#define NM_DBUS_SIGNAL_STATE_CHANGED            "StateChanged" -+ -+#define NM_STATE_CONNECTED_OLD    3 -+#define NM_STATE_CONNECTED_LOCAL  50 -+#define NM_STATE_CONNECTED_SITE   60 -+#define NM_STATE_CONNECTED_GLOBAL 70 -  - nsNetworkManagerListener::nsNetworkManagerListener() : -     mLinkUp(PR_TRUE), mNetworkManagerActive(PR_FALSE), -@@ -174,7 +172,9 @@ - PRBool - nsNetworkManagerListener::HandleMessage(DBusMessage* message) { -   if (dbus_message_is_signal(message, NM_DBUS_INTERFACE, --                             NM_DBUS_SIGNAL_STATE_CHANGE)) { -+                             NM_DBUS_SIGNAL_STATE_CHANGE) || -+      dbus_message_is_signal(message, NM_DBUS_INTERFACE, -+                             NM_DBUS_SIGNAL_STATE_CHANGED)) { -     UpdateNetworkStatus(message); -     return PR_TRUE; -   } -@@ -191,7 +191,10 @@ -   mNetworkManagerActive = PR_TRUE; -    -   PRBool wasUp = mLinkUp; --  mLinkUp = result == NM_STATE_CONNECTED; -+  mLinkUp = (result == NM_STATE_CONNECTED_OLD) || -+            (result == NM_STATE_CONNECTED_LOCAL) || -+            (result == NM_STATE_CONNECTED_SITE) || -+            (result == NM_STATE_CONNECTED_GLOBAL); -   if (wasUp == mLinkUp) -     return; -  - diff --git a/xulrunner-2.0-network-link-service.patch b/xulrunner-2.0-network-link-service.patch deleted file mode 100644 index b3243a9..0000000 --- a/xulrunner-2.0-network-link-service.patch +++ /dev/null @@ -1,274 +0,0 @@ -# HG changeset patch -# Parent 31879b88cc82c1f44e6a6c25a05aa2c70af22d7e -# User Martin Stransky <stransky@redhat.com> -Bug 627672 - XPCOM component (libdbusservice.so) is not registered although it should be; r=cbiesinger - - - -diff --git a/netwerk/base/src/nsIOService.cpp b/netwerk/base/src/nsIOService.cpp ---- a/netwerk/base/src/nsIOService.cpp -+++ b/netwerk/base/src/nsIOService.cpp -@@ -160,31 +160,33 @@ PRInt16 gBadPortList[] = { -   2049, // nfs -   4045, // lockd -   6000, // x11         -   0,    // This MUST be zero so that we can populating the array - }; -  - static const char kProfileChangeNetTeardownTopic[] = "profile-change-net-teardown"; - static const char kProfileChangeNetRestoreTopic[] = "profile-change-net-restore"; -+static const char kStartupTopic[] = "profile-after-change"; -  - // Necko buffer cache - nsIMemory* nsIOService::gBufferCache = nsnull; - PRUint32   nsIOService::gDefaultSegmentSize = 4096; - PRUint32   nsIOService::gDefaultSegmentCount = 24; -  - //////////////////////////////////////////////////////////////////////////////// -  - nsIOService::nsIOService() -     : mOffline(PR_TRUE) -     , mOfflineForProfileChange(PR_FALSE) -     , mManageOfflineStatus(PR_TRUE) -     , mSettingOffline(PR_FALSE) -     , mSetOfflineValue(PR_FALSE) -     , mShutdown(PR_FALSE) -+    , mNetworkLinkServiceInitialized(PR_FALSE) -     , mChannelEventSinks(NS_CHANNEL_EVENT_SINK_CATEGORY) -     , mContentSniffers(NS_CONTENT_SNIFFER_CATEGORY) -     , mAutoDialEnabled(PR_FALSE) - { - } -  - nsresult - nsIOService::Init() -@@ -230,16 +232,17 @@ nsIOService::Init() -     } -      -     // Register for profile change notifications -     nsCOMPtr<nsIObserverService> observerService = -         mozilla::services::GetObserverService(); -     if (observerService) { -         observerService->AddObserver(this, kProfileChangeNetTeardownTopic, PR_TRUE); -         observerService->AddObserver(this, kProfileChangeNetRestoreTopic, PR_TRUE); -+        observerService->AddObserver(this, kStartupTopic, PR_TRUE); -         observerService->AddObserver(this, NS_XPCOM_SHUTDOWN_OBSERVER_ID, PR_TRUE); -         observerService->AddObserver(this, NS_NETWORK_LINK_TOPIC, PR_TRUE); -     } -     else -         NS_WARNING("failed to get observer service"); -          -     NS_TIME_FUNCTION_MARK("Registered observers"); -  -@@ -258,29 +261,19 @@ nsIOService::Init() -         NS_WARN_IF_FALSE(NS_SUCCEEDED(rv), "Was unable to allocate.  No gBufferCache."); -         CallQueryInterface(recyclingAllocator, &gBufferCache); -     } -  -     NS_TIME_FUNCTION_MARK("Set up the recycling allocator"); -  -     gIOService = this; -  --    // go into managed mode if we can, and chrome process --    if (XRE_GetProcessType() == GeckoProcessType_Default) --        mNetworkLinkService = do_GetService(NS_NETWORK_LINK_SERVICE_CONTRACTID); -- --    if (!mNetworkLinkService) --        // We can't really determine if the machine has a usable network connection, --        // so let's cross our fingers! --        mManageOfflineStatus = PR_FALSE; -- --    if (mManageOfflineStatus) --        TrackNetworkLinkStatusForOffline(); --    else --        SetOffline(PR_FALSE); -+    // We can't really determine if the machine has a usable network connection, -+    // (mNetworkLinkService will be initialized later) so let's cross our fingers! -+    SetOffline(PR_FALSE); -      -     NS_TIME_FUNCTION_MARK("Set up network link service"); -  -     return NS_OK; - } -  -  - nsIOService::~nsIOService() -@@ -306,16 +299,57 @@ nsIOService::InitializeSocketTransportSe -         rv = mSocketTransportService->Init(); -         NS_ASSERTION(NS_SUCCEEDED(rv), "socket transport service init failed"); -         mSocketTransportService->SetAutodialEnabled(mAutoDialEnabled); -     } -  -     return rv; - } -  -+nsresult -+nsIOService::InitializeNetworkLinkService() -+{ -+    NS_TIME_FUNCTION; -+ -+    nsresult rv = NS_OK; -+ -+    if (mNetworkLinkServiceInitialized) -+      return rv; -+ -+#if defined(MOZ_PLATFORM_MAEMO) -+    // libdbusservice fails to initialize on Maemo platform, see Bug 627672 -+    mNetworkLinkService = NULL; -+#else -+    // go into managed mode if we can, and chrome process -+    if (XRE_GetProcessType() == GeckoProcessType_Default) -+    { -+        mNetworkLinkService = do_GetService(NS_NETWORK_LINK_SERVICE_CONTRACTID, &rv); -+        if (NS_FAILED(rv)) { -+            NS_WARNING("failed to get network link service"); -+            return rv; -+        } -+    } -+#endif -+ -+    mNetworkLinkServiceInitialized = PR_TRUE; -+ -+    if (!mNetworkLinkService) { -+        // We can't really determine if the machine has a usable network connection, -+        // so let's cross our fingers! -+        mManageOfflineStatus = PR_FALSE; -+    } -+ -+    if (mManageOfflineStatus) -+        TrackNetworkLinkStatusForOffline(); -+    else -+        SetOffline(PR_FALSE); -+     -+    return rv; -+} -+ - nsIOService* - nsIOService::GetInstance() { -     if (!gIOService) { -         gIOService = new nsIOService(); -         if (!gIOService) -             return nsnull; -         NS_ADDREF(gIOService); -  -@@ -689,16 +723,19 @@ nsIOService::NewChannel(const nsACString -     if (NS_FAILED(rv)) return rv; -  -     return NewChannelFromURI(uri, result); - } -  - PRBool - nsIOService::IsLinkUp() - { -+    NS_ASSERTION(mNetworkLinkServiceInitialized,  -+                 "network link service should be initialized"); -+ -     if (!mNetworkLinkService) { -         // We cannot decide, assume the link is up -         return PR_TRUE; -     } -  -     PRBool isLinkUp; -     nsresult rv; -     rv = mNetworkLinkService->GetIsLinkUp(&isLinkUp); -@@ -968,16 +1005,20 @@ nsIOService::Observe(nsISupports *subjec -         if (mOfflineForProfileChange) { -             mOfflineForProfileChange = PR_FALSE; -             if (!mManageOfflineStatus || -                 NS_FAILED(TrackNetworkLinkStatusForOffline())) { -                 SetOffline(PR_FALSE); -             } -         }  -     } -+    else if (!strcmp(topic, kStartupTopic)) { -+        // Lazy initialization of network link service (see bug 620472) -+        InitializeNetworkLinkService(); -+    } -     else if (!strcmp(topic, NS_XPCOM_SHUTDOWN_OBSERVER_ID)) { -         // Remember we passed XPCOM shutdown notification to prevent any -         // changes of the offline status from now. We must not allow going -         // online after this point. -         mShutdown = PR_TRUE; -  -         SetOffline(PR_TRUE); -  -@@ -1085,32 +1126,40 @@ nsIOService::NewSimpleNestedURI(nsIURI*  -     NS_IF_ADDREF(*aResult = new nsSimpleNestedURI(safeURI)); -     return *aResult ? NS_OK : NS_ERROR_OUT_OF_MEMORY; - } -  - NS_IMETHODIMP - nsIOService::SetManageOfflineStatus(PRBool aManage) { -     PRBool wasManaged = mManageOfflineStatus; -     mManageOfflineStatus = aManage; -+ -+    if (!mNetworkLinkServiceInitialized) { -+        InitializeNetworkLinkService(); -+    } -+ -     if (mManageOfflineStatus && !wasManaged) -         return TrackNetworkLinkStatusForOffline(); -     return NS_OK; - } -  - NS_IMETHODIMP - nsIOService::GetManageOfflineStatus(PRBool* aManage) { -     *aManage = mManageOfflineStatus; -     return NS_OK; - } -  - nsresult - nsIOService::TrackNetworkLinkStatusForOffline() - { -     NS_ASSERTION(mManageOfflineStatus, -                  "Don't call this unless we're managing the offline status"); -+    NS_ASSERTION(mNetworkLinkServiceInitialized,  -+                "network link service should be set up"); -+ -     if (!mNetworkLinkService) -         return NS_ERROR_FAILURE; -  -     if (mShutdown) -         return NS_ERROR_NOT_AVAILABLE; -    -     // check to make sure this won't collide with Autodial -     if (mSocketTransportService) { -diff --git a/netwerk/base/src/nsIOService.h b/netwerk/base/src/nsIOService.h ---- a/netwerk/base/src/nsIOService.h -+++ b/netwerk/base/src/nsIOService.h -@@ -129,16 +129,17 @@ private: -                                               nsIProtocolHandler* hdlr); -  -     // Prefs wrangling -     NS_HIDDEN_(void) PrefsChanged(nsIPrefBranch *prefs, const char *pref = nsnull); -     NS_HIDDEN_(void) GetPrefBranch(nsIPrefBranch2 **); -     NS_HIDDEN_(void) ParsePortList(nsIPrefBranch *prefBranch, const char *pref, PRBool remove); -  -     nsresult InitializeSocketTransportService(); -+    nsresult InitializeNetworkLinkService(); -  - private: -     PRPackedBool                         mOffline; -     PRPackedBool                         mOfflineForProfileChange; -     PRPackedBool                         mManageOfflineStatus; -  -     // Used to handle SetOffline() reentrancy.  See the comment in -     // SetOffline() for more details. -@@ -146,16 +147,17 @@ private: -     PRPackedBool                         mSetOfflineValue; -  -     PRPackedBool                         mShutdown; -  -     nsCOMPtr<nsPISocketTransportService> mSocketTransportService; -     nsCOMPtr<nsPIDNSService>             mDNSService; -     nsCOMPtr<nsIProtocolProxyService2>   mProxyService; -     nsCOMPtr<nsINetworkLinkService>      mNetworkLinkService; -+    PRPackedBool                         mNetworkLinkServiceInitialized; -      -     // Cached protocol handlers -     nsWeakPtr                            mWeakHandler[NS_N(gScheme)]; -  -     // cached categories -     nsCategoryCache<nsIChannelEventSink> mChannelEventSinks; -     nsCategoryCache<nsIContentSniffer>   mContentSniffers; -  diff --git a/xulrunner-9.0-secondary-ipc.patch b/xulrunner-9.0-secondary-ipc.patch deleted file mode 100644 index 40ecfd5..0000000 --- a/xulrunner-9.0-secondary-ipc.patch +++ /dev/null @@ -1,60 +0,0 @@ -diff -up xulrunner-9.0/mozilla-beta/ipc/chromium/src/base/data_pack.cc.secondary-ipc xulrunner-9.0/mozilla-beta/ipc/chromium/src/base/data_pack.cc ---- xulrunner-9.0/mozilla-beta/ipc/chromium/src/base/data_pack.cc.secondary-ipc	2011-12-07 07:27:43.000000000 +0100 -+++ xulrunner-9.0/mozilla-beta/ipc/chromium/src/base/data_pack.cc	2011-12-09 14:35:50.397220865 +0100 -@@ -91,14 +91,7 @@ bool DataPack::Load(const FilePath& path - bool DataPack::Get(uint32_t resource_id, StringPiece* data) { -   // It won't be hard to make this endian-agnostic, but it's not worth -   // bothering to do right now. --#if defined(__BYTE_ORDER) --  // Linux check --  COMPILE_ASSERT(__BYTE_ORDER == __LITTLE_ENDIAN, --                 datapack_assumes_little_endian); --#elif defined(__BIG_ENDIAN__) --  // Mac check --  #error DataPack assumes little endian --#endif -+#warning DoTheRightThingMakingThisEndianAgnostic! -  -   DataPackEntry* target = reinterpret_cast<DataPackEntry*>( -       bsearch(&resource_id, mmap_->data() + kHeaderLength, resource_count_, -diff -up xulrunner-9.0/mozilla-beta/ipc/chromium/src/build/build_config.h.secondary-ipc xulrunner-9.0/mozilla-beta/ipc/chromium/src/build/build_config.h ---- xulrunner-9.0/mozilla-beta/ipc/chromium/src/build/build_config.h.secondary-ipc	2011-12-07 07:27:43.000000000 +0100 -+++ xulrunner-9.0/mozilla-beta/ipc/chromium/src/build/build_config.h	2011-12-09 14:39:44.922231601 +0100 -@@ -59,11 +59,23 @@ - #define ARCH_CPU_ARMEL 1 - #define ARCH_CPU_32_BITS 1 - #define WCHAR_T_IS_UNSIGNED 1 -+#elif defined(__powerpc64__) -+#define ARCH_CPU_PPC64 1 -+#define ARCH_CPU_64_BITS 1 - #elif defined(__ppc__) || defined(__powerpc__) - #define ARCH_CPU_PPC 1 - #define ARCH_CPU_32_BITS 1 --#elif defined(__sparc64__) -+#elif defined(__s390x__) -+#define ARCH_CPU_S390X 1 -+#define ARCH_CPU_64_BITS 1 -+#elif defined(__s390__) -+#define ARCH_CPU_S390 1 -+#define ARCH_CPU_32_BITS 1 -+#elif defined(__sparc__) && !defined(__arch64) - #define ARCH_CPU_SPARC 1 -+#define ARCH_CPU_32_BITS 1 -+#elif defined(__sparc__) && defined(__arch64) -+#define ARCH_CPU_SPARC64 1 - #define ARCH_CPU_64_BITS 1 - #else - #error Please add support for your architecture in build/build_config.h -diff -up xulrunner-9.0/mozilla-beta/ipc/chromium/src/chrome/common/ipc_message_utils.h.secondary-ipc xulrunner-9.0/mozilla-beta/ipc/chromium/src/chrome/common/ipc_message_utils.h ---- xulrunner-9.0/mozilla-beta/ipc/chromium/src/chrome/common/ipc_message_utils.h.secondary-ipc	2011-12-07 07:27:43.000000000 +0100 -+++ xulrunner-9.0/mozilla-beta/ipc/chromium/src/chrome/common/ipc_message_utils.h	2011-12-09 14:40:59.602679278 +0100 -@@ -195,7 +195,8 @@ struct ParamTraits<unsigned long long> { - }; - #endif -  --#if !(defined(OS_MACOSX) || defined(OS_OPENBSD) || defined(OS_WIN) || (defined(OS_LINUX) && defined(ARCH_CPU_64_BITS))) -+// Although s390 is a 32-bit system it defines size_t as unsigned long -+#if !(defined(OS_MACOSX) || defined(OS_OPENBSD) || defined(OS_WIN) || (defined(OS_LINUX) && (defined(ARCH_CPU_64_BITS) || defined(ARCH_CPU_S390)))) - // There size_t is a synonym for |unsigned long| ... - template <> - struct ParamTraits<size_t> {  | 
